• 开源镜像
  • 开源沙龙
  • 媛宝
  • 猿帅
  • 注册
  • 登录
  • 息壤开源生活方式平台
  • 加入我们

开源日报

  • 开源日报第678期:《You-Dont-Know-JS》

    5 2 月, 2020
    开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
    今日推荐开源项目:《You-Dont-Know-JS》
    今日推荐英文原文:《If You’re Not Constantly Improving You’re Going The Wrong Direction》

    今日推荐开源项目:《You-Dont-Know-JS》传送门:GitHub链接
    推荐理由:该项目为YDNJS(You Don’t Know JS)图书系列,包含一系列深入探讨JavaScript语言核心机制的书籍。
    今日推荐英文原文:《If You’re Not Constantly Improving You’re Going The Wrong Direction》作者:P.G.Barnett
    原文链接:https://medium.com/swlh/if-youre-not-constantly-improving-you-re-going-the-wrong-direction-1d56a8045ed
    推荐理由:我们当然知道不存在完美。无论我们觉得作品有多好,它永远都有更好的空间。想反,当我们觉得没有什么提升空间的时候,问题就来了。
    “I have never written the perfect piece.” ————作者语。

    If You’re Not Constantly Improving You’re Going The Wrong Direction

    Why Your Best Always Needs To Be Better

    How does one improve upon perfection?

    Ah, that’s a loaded question. Or perhaps the opinion of a narcissist or quite possibly a failed pickup line from a misogynistic predator in a smokey bar room.

    As I was getting ready for the JOB this morning, I caught myself again, thinking about selections from my body of work this past year.

    I readily admit, much of what I’ve written can certainly be improved upon. I have never written the perfect piece.

    They all could have been improved in some fashion, but that doesn’t mean I shouldn’t have published them when I did. If I had held back and micro-examined each piece searching for and finding flaws in hopes of making them perfect, they would all be sitting in my drafts section.

    All four hundred and fifty-seven of them. Okay, I’ll stop bragging about it. Please don’t hammer me about being some kind of a crappy content mill.

    I’ve read many articles here from so many of my writing friends who have long extolled the virtue of not being perfect, either personally or professionally. They’ve written some really great articles about the paralysis of perfection.

    And I agree to a point.

    I’ve always thought perfection to be subjective. You know, the eye of the beholder and all that jazz. Think about this for a bit. Nature is almost always not perfect. It’s beautifully flawed and imprecise. If that’s the case, why should we and our writing be any different?

    Now don’t go running off telling everybody I said it’s okay to write crap all the time. Stay in the lane, folks.

    Look, the fact we’re Human guarantees we’re going to make mistakes; we’re going to take a wrong turn professionally; screw up a relationship or make a wrong financial decision.

    We’re just going to fck up. It’s what we do.

    And we as writers are going to do the same. We’re going to throw some really sh
    tty stuff on the table, and we’re going to realize (some of us sooner than others) that what we thought was one of our best works was actually a load of crap.

    And as we hold our noses and carry out the trash, we’re going to tell ourselves not to ever write something like that again. Or if we do, then make it a hll of a lot better than we did the last time.

    We’ll tell ourselves what we thought was one of our best works at the time — needed to be better. They always need to be better.

    What’s really weird in a depressing/not so depressing kind of way, is that as writers we’re going to have this realization a lot.

    I’m willing to bet none of us feel we’ve reached the pinnacle of our writing career.

    I honestly don’t believe any of us think they’re standing at the top of the heap gazing down at all the lesser Gods.

    What’s the old saying?

    Oh yeah, it comes with the territory.

    A lot of the veterans here already understand the rigors of constant improvement. They know full well if you’re not improving daily, you’re becoming stagnant and possibly heading in the wrong direction.

    They also know they’re never going to be able to make the decision toward constant improvement for you. Only you can do that. Only you can adopt the mindset that your best almost always needs to be better.

    Now, don’t get me wrong here. There are quite likely going to be many days when good enough is okay. None of us can keep up this grand prix pace toward writing Nirvana forever.

    There are many times (even this morning for me) when a writer may know what they’re about to publish isn’t their best work, but they also understand it’s good enough for now.

    And as we tap that publish button, we tell themselves we need to improve on the next one, and the next one and so on. And though we know, it’s not our best work we try to be proud of this latest accomplishment, or at least we try to be proud of our ugly baby.

    Yet we sometimes peruse some of our work and think d
    mn, that sucker is so ugly I’d have to hang a pork chop on its neck to get a dog to lick it.

    Note to all travelers. The road to perfection is littered with many failures.

    No one said this journey of ours was going to be easy. Well, maybe somebody did, but that’s because whoever said that had no freaking clue about what we do.

    My guess is they’ve never tried to do what we do day in day out.

    But those of us who do this writing bit of ours daily, know what it’s like when we hammer out some really crappy stuff. We’re always struggling to improve with each new body of work in the hopes of turning out something that will resonate with our readers.

    When it works we often give ourselves a brief moment to do a little happy dance. Sometimes we even re-read the work just to see why so many readers liked it.

    And then we spot a typo or a grammatical smudge in our latest work, groan in dismay, and promise ourselves to do a better job of writing and editing.

    Even when we think we’ve written our best work, we realize we haven’t. And so it goes with this writing career of ours. Many times our best needs to be better.

    We understand we need to get back on the horse, bicycle, moped, or cross country elliptical and do it all again. We know we need to do it with the intent to write it better than the last time. We do it because it’s in our blood, of course, but we also know if we continue to write, we’ll get better at it.

    I don’t believe any of us will ultimately achieve perfection. But I know a lot of us, if we’re willing to acknowledge the fact there is always room for improvement, will get pretty dmn close.

    In my opinion, getting pretty d
    mn close is certainly good enough for me.

    Let’s keep in touch: [email protected]

    © P.G. Barnett, 2020. All Rights Reserved.


    下载开源日报APP:https://opensourcedaily.org/2579/
    加入我们:https://opensourcedaily.org/about/join/
    关注我们:https://opensourcedaily.org/about/love/
  • 开源日报第677期:《从头开始 vanillawebprojects》

    4 2 月, 2020
    开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
    今日推荐开源项目:《从头开始 vanillawebprojects》
    今日推荐英文原文:《Bored? 7 Fun Things You Can Build》

    今日推荐开源项目:《从头开始 vanillawebprojects》传送门:GitHub链接
    推荐理由:新手上路最开始用的就是基础的 HTML+CSS+JS 三件套,而在框架和库越来越多的现在,更多的时候使用它们来提高效率是常见的选择。这个项目则是反过来,是使用老三件套实现的一些小项目合集,不管是为了更好理解框架,还是为了验证一下自己的知识水平,重新操刀老三件套都不失为一个好选择,要知道不管是什么框架和库,基础都是由这三板斧搭建起来的。
    今日推荐英文原文:《Bored? 7 Fun Things You Can Build》作者:Daan
    原文链接:https://medium.com/better-programming/bored-7-fun-things-you-can-build-91833439b5d4
    推荐理由:无聊时的精选,学生党接下来可还要待家里好久呢

    Bored? 7 Fun Things You Can Build

    From Tetris to smart contracts and more

    There is no real secret when it comes to becoming a great developer. The thing that separates great developers from mediocre developers is the effort they’ve put in. Unfortunately, there are no shortcuts. Getting your hands dirty is what will make you grow as a developer.

    So while you’re on your way to becoming a fantastic developer, why not do it making something that’s actually fun to build?

    What’s fun to build? You’ve probably thought about this for a while. You want to build something but you don’t know what…well, let me help you out.

    In this piece, I’ll share seven projects with you that are both challenging and fun.

    Project 1: Hardware That Waters Your Plants


    Photo by Harrison Broadbent on Unsplash

    This is a project I’ve been wanting to work on for myself for quite some time. When developing, I spend a lot of my time on web development. But software development is just so much more! If you like the combination of software and hardware this project is for you.

    This project aims to water your plants automatically. All you need for this is an Arduino (or Raspberry Pi), a moisture sensor, and a water pump. The goal is to write a piece of code that keeps your plants alive for as long as possible.

    What you’ll learn:
    • The basic usage of an Arduino (or Raspberry Pi).
    • Reading sensors.
    • The interaction between software and hardware.

    Project 2: Tetris


    Check the GitHub repository here

    Building Tetris is a great way to get a feeling of how games are developed from a basic perspective. If you want to make an app you could use Swift for this project. If you want to make this using HTML5, you could go for a JavaScript framework, like React or Vue.

    Things you’ll learn:
    • The movement of entities.
    • The detection of key presses.
    • Collision detection.
    Find the example GitHub repository here.

    Project 3: Smart Contract


    The official Solidity documentation

    Cryptocurrency has been a hot topic for a few years now. Despite this, there still aren’t many developers capable of writing smart contracts.

    Many blockchains that use smart contracts — the Ethereum blockchain currently being the biggest of them. The programming language that’s used for these Ethereum smart contracts is called Solidity.

    To get started with writing a smart contract you could start with a smart contract that sends transactions. If you want a more advanced smart contract, you could make one that functions as an escrow.

    What you’ll learn:
    • A whole different mindset when it comes to programming.
    • Blockchain.
    • The basics of Solidity.
    You can find a great starting point for Solidity here.

    Project 4: Classification of Iris Flowers


    Source

    If you are new to the world of machine learning, then the classification of iris flowers is a great way to get a grasp of what machine learning is all about. That’s because this project is known as the “Hello World” of machine learning projects.

    The aim of this project is to classify iris flowers among three species (setosa, versicolor or virginica) based on measurements of length and width of sepals and petals. This project is perfectly suited being made in Python. All you need to get started is the data set.

    What you’ll learn:
    • You will get a grasp of machine learning

    Project 5: Contribute to Open Source


    Want to know more? Check this

    If you’re not the type of person that likes doing solo projects, you could always choose to contribute to open source. It might seem scary at first sight but there are lots of projects that could use a little help.

    If you don’t feel comfortable enough to submit pieces of code, that’s fine. Contributing can be as simple as checking a pull request.

    Pick a project you like and start helping people out!

    Here’s a good starting point if you want to contribute to an open-source project on GitHub.

    What you’ll learn:
    • Open source is fun and engaging, you meet awesome people.
    • Huge variety in projects.
    • Lots to learn from different people.

    Project 6: Creating Your Own Trading Algorithm


    Photo by M. B. M. on Unsplash

    Creating your own trading algorithm is a project that requires a lot of finetuning. But before you can start building your algorithm you should do some research on trading strategies. Once you’ve got your strategy figured out, you can use a free stock API, like IEX Cloud, to check current the prices of your stocks.

    Let the algorithm run for some time and see how it performs. There are plenty of stock simulators you can use that will let you play with virtual cash instead of real cash.

    What you’ll learn:
    • Learning and implementing trading strategies (algorithm).
    • Interacting with an API.
    • You could go the extra mile by letting the algorithm decide which stocks or assets to buy.

    Project 7: Dashboard


    Source

    There are lots of out-of-the-box projects available when it comes to dashboards — but nothing’s as fun as building your own!

    This is one of the easier projects from this list. Very useful for developers who are just starting out. You can make this in basic HTML5 and CSS but if you want to go the extra mile, add React or Vue into the mix.

    What you’ll learn:
    • Web development basics, like HTML5 and CSS.
    • Implementing graphs.
    • Interacting with the database.
    • Don’t want to do all the CSS yourself? Let Tailwind help you out!

    Now it’s Your Turn!

    It’s time to do some real work and have fun while you learn new things. These projects should keep you busy for quite some time. Picked one and just go for it!

    I would love giving you feedback on your project — I’m looking forward to seeing the results.
    If you can’t have fun, there’s no sense in doing it — Paul Walker
    Happy coding!
    下载开源日报APP:https://opensourcedaily.org/2579/
    加入我们:https://opensourcedaily.org/about/join/
    关注我们:https://opensourcedaily.org/about/love/
  • 开源日报第676期:《肺炎疫情实时省市地图 2019-ncov》

    3 2 月, 2020
    开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
    今日推荐开源项目:《肺炎疫情实时省市地图 2019-ncov》
    今日推荐英文原文:《Chatbot Architecture Tutorial》

    今日推荐开源项目:《肺炎疫情实时省市地图 2019-ncov》传送门:GitHub链接
    推荐理由:疫情紧张,众志成城。该项目对疫情地图做了简单的扩展,能够显示某个省的疫情以及消息播报,旨在帮助大家更加直观了解自己家乡的情况。再次提醒大家尽量不出门,出门后必戴口罩。
    今日推荐英文原文:《Chatbot Architecture Tutorial》作者:Nihit Saxena
    原文链接:https://towardsdatascience.com/chatbot-tutorial-choosing-the-right-chatbot-architecture-5539c8489def
    推荐理由:机器人说到底是为提高效率而生,那聊天机器人,自然是为了提高与人交流的效率。如今,我们不仅不知道屏幕背后是什么样的人,甚至不知道所谓的“屏幕背后”是否存在。

    Chatbot Architecture Tutorial

    Choosing the Right Chatbot Architecture

    https://tinyurl.com/w42kku2
    These days Chatbots are on the rise and the specific reason behind it is that industries are trying to reduce the redundant tasks. We all don’t want to revisit the same task/process by going through the same set of procedure again and again. Hence, the next level of interfacing is introduced, called conversational bots.

    The chatbot is not a new concept, the first chatbot ever was developed in the 1960’s, but nowadays we have chatbots over multiple platforms over the internet. These chatbots are configured to achieve some goal or to have a healthy conversation for entertainment. Thanks to IOT devices, we now have these chatbots working independently on devices in restaurants, banks, shopping centers etc. All this just to reduce the redundant and monotonous tasks like taking orders for restaurants or booking a flight or executing a particular job. On the other hand, these chatbots have proven to have increased the user engagement of the website, because it is more interactive to talk to a chatbot rather than clicking on buttons.

    When you wish to develop a chatbot, based the usability and context of business operations the architecture involved in building a chatbot changes dramatically. We cannot write a string matching and conditional operations for every kind of chatbot. Hence, Chatbot architecture is the heart of chatbot development.

    Based on its use case there are two major types of chatbots:
    1. Chatbot for Entertainment
    2. Chatbot for Business
    In this article, I will brief you about different popular architectures involved in chatbot development. Based on the use case, you can adopt to any of the technique you like.

    What to expect from final Chatbot Product?


    Chatbot responses to user messages should be appropriate enough to continue the conversation. It is sometime not necessary for chatbot to understand and remember all the details of the sentence; based on requirements we need to alter different parts / elements and use the other; but the basic communication flow remains the same. However, choosing the correct architecture depends on the type of domain of the chatbot.

    Sometimes in entertainment chatbots, the architecture varies, where you either use the pattern matcher for user input or you save the conversation history to get the insight and decide the type of response. The target in entertainment bots is to increase the average time spent by user conversing with bot. If the time is less, which implies that the conversation is shorter; hence chatbot is boring.

    Chatbot for business are often the most popular and serves transactional requests, i.e. they are made for a specific purpose or to achieve a particular goal. It should be the utmost priory of the chatbot developer to have the goal fixed and defined beforehand. By defined I mean, one should have the number of requirement fixed before actually developing a chatbot. For example, travel chatbot is providing an information about flights, hotels, and tours and helps to find the best package according to user’s criteria and can do bookings accordingly. Also, Google Assistant readily provides information requested by the user and Uber bot takes a ride request.

    Conversation for business chatbots are typically short, less than 15mins. Each conversation has a specific goal and the quality of chatbot can be accessed by how many users get to the goal like following:
    1.Has the user found the information he/she was looking for? 2.Has the user successfully booked a flight and a hotel? 3.Has the user bought products which help to solve the problem at hand? Perhaps some of the chatbots doesn’t fit into this classification, but it should be good enough to work for the majority of bots which are developed for now. Hence for better understanding of the models I will explain the simplest first and then increase the complexity. Remember, there is no right approach for a chatbot architecture, you can use any of the approach which favors your use case. Also, it is not wise to use a complex approach for a simpler use case. As you won’t use a snipper to kill an ant, it will just make your life difficult.

    PS: No offence to Ant Lovers. :p

    https://tinyurl.com/tkr5l7y

    Intent — Context


    While developing a chatbot, we first design the capabilities or request the chatbot can handle. As I have mentioned earlier, always design the capability classes first, these classes are nothing but the intents to which the chatbot can answer. In other words intent is the class of operations or requests which can be handled by the chatbot to give response. An intent is usually created by defining a class of request and putting in the sentences associated with it.

    For example if we are creating a chatbot that have a capability to set an alarm. Then an intent class is defined as ALARM_SET and user can express this request in hundreds of ways like “Set an alarm for 10AM” or “Wake me up at 10 in the morning” or “Remind me when its 10AM” etc. Hence whenever a user ask a query falling under this category then the intent is ALARM_SET and chatbot generate response accordingly.

    Similarly, Context is the real world entity around which conversation is happening. In other words, the intent request needs an entity to process and generate response. Like in the above example “10AM” is the context on which we have to set the alarm. Now imagine we are creating a chatbot for knowledge transfer on the behalf of an Insurance Company. Consider one of the intent class is ABOUT, so whenever a user can ask “Tell me about retirement plan” or “What is a retirement plan” etc., so here “retirement plan” is context. Hence in this way most of the chatbots are designed. Remember these terminology by heart.

    Now I will discuss about different architectures involved in chatbot development.

    Pattern-based Approach


    https://tinyurl.com/sssatyz
    This is the simplest way to create a chatbot and is also known as rule-based chatbot. You can create both entertainment and business chatbot with this approach. The technique involved in it is simple, you just need to specify the possible input question that the user will ask and its associated response. Refer to the diagram below:
    • What is your NAME
    When a chatbot receives the message, it goes through all the user defined patterns until finds the pattern which matches user messages. If match is found, the chatbot uses the correct response template to generate the response. In other words, developer is defining a set of rules or pattern as conditions to give response to user.

    Heuristics for selecting the right response can be engineered in many different ways, sometimes a general if-else conditions is implied whereas sometimes a machine learning algorithm is trained on these input pattern. This approach is very popular for entertainment bots. AIML is the widely used language for writing pattern and responses.

    ChatScript is the famous open source library used to implement the rule based language. It so popular and widely used because it has some additional natural language processing pipeline which includes part of speech tagging, synonyms finder etc., which gives additional accuracy to matching the patterns with user input. Although, it does not use any machine learning algorithms or call any 3rd party API’s unless you program it to do so.

    Intent Classification Architecture


    The challenge with the pattern-based or rule based approach is that, the patterns should be coded manually, and it is not an easy task. Imagine, if we try to increase the capability of the chatbot, then we need to hardcode every condition the chatbot can answer. This is extremely difficult to maintain and can cause a lot of overlapping confusion between the patterns. This can possibly reduce the accuracy of the chatbot. Also as mentioned earlier single question can be asked in multiple ways. Therefore, it is not easy for a human to define and find pattern by natural language understanding, whereas computers can do this easily.

    In other words, for narrow domains a pattern matching architecture would be the ideal choice. However, for chatbots that deal with multiple domains or multiple services, broader domains, sophisticated, state-of-the-art neural network architectures, such as Long Short-Term Memory (LSTMs) and reinforcement learning agents are the best options.

    Machine learning can be applied on intent classification algorithm to classify and find patterns in the natural language, thanks to word embedding. You just need to provide training set of a few hundreds or thousands of examples, and it will pick up patterns in data and classify the intent accurately and in fairly less amount of time.

    Such machine learning algorithm can be built using any popular machine learning library like Sci-kit learn, Tensorflow or PyTorch. Another option is to use one of cloud API: wit.ai, api.ai, Microsoft LUIS.

    676-4
    https://tinyurl.com/yx894jqb

    Response Generation


    Pattern matching, intent classification and context extraction helps to understand what user message means. Whenever the chatbot gets the intent and the context of message, it shall generate a response. But now the question arises how? You can approach it differently based on the type of chatbot you are building.

    Simplest way is to response a static message by placing some of the values variable, based on the entity and processing that you undergo. This processing can be a Query to a database or calling some 3rd party API. ChatScript provide a very handy solution to these kind of problems. For Example:
    • Q: What is the age of Obama?
    • A: Age of $(‘Entity’) is $(‘Query result’)
    Apart from this, different kind of chatbots offer different processing and response mechanism. For example, a medical chatbot will have a predefined set of Symptoms Model for different diseases and for generating the response it will apply statistical modelling and probabilistic approach to generate similarity with symptoms model to predict the disease based on the user input to chatbot questions and gives response accordingly.

    A question answering chatbot will dig into the knowledge graph or a database to query the request and generate the best answer score to give the correct response. On the other hand, a weather based chatbot will call a 3rd party API’s to get the right data and place it into fixed messages to give the response.

    This concept of generating the responses based on user message is also called Response modelling. There are two major types of modelling:
    1. Generative Modelling
    2. Retrieval based Modelling
    This post mostly covers the Retrieval based models. They are much easier to build and provide more predictable results. The chatbot uses the intent and context of conversation for selecting the best response from a predefined list of bot messages. You probably won’t get 100% accuracy of responses, but at least you know all possible responses and can make sure that there are no inappropriate or grammatically incorrect responses. Retrieval-based models are more practical at the moment. Also many algorithms and APIs are readily available for developers.


    Generative Response Model is the future of chatbots where the output not only depends on the current input, but to a series of input given in the past. I will write a separate post on Generative response model, but for now it is out of the scope of this post. However, 90% of the chatbot in the market today is build using Retrieval based modelling because of its huge capability and ability to solve maximum problem and making life easy for people.

    Conclusion


    As the chatbot market is rising on an exponential basis. A new mode of interfacing is born. Thanks to the IOT and Deep Learning, we now have a huge number of possibilities waiting for us to conquer from speech-to-text to online helpdesk and companion like alexa. I have been developing chatbots since quite a long time and I can assure you it is so much fun to develop and design one. I will keep on sharing more in-depth and futuristic chatbot possibilities. Thank you for reading, hit clap if you like it; and for any discussion / doubts or freelance chatbot projects you can reach out to me at [email protected]. Till then Happy Learning!
    下载开源日报APP:https://opensourcedaily.org/2579/
    加入我们:https://opensourcedaily.org/about/join/
    关注我们:https://opensourcedaily.org/about/love/
  • 开源日报第675期:《Application Inspector》

    2 2 月, 2020
    开源日报 每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,坚持阅读《开源日报》,保持每日学习的好习惯。
    今日推荐开源项目:《Application Inspector》
    今日推荐英文原文:《New Enterprise IT Controls for Data Studio》

    今日推荐开源项目:《Application Inspector》传送门:GitHub链接
    推荐理由:Microsoft发布的源代码分析器,用于通过使用基于json的规则引擎的静态分析来显示感兴趣的特征和其他特征,以回答问题“其中是什么”。非常适合在使用前扫描组件或检测功能级别变化。
    今日推荐英文原文:《New Enterprise IT Controls for Data Studio》作者:Graham Kaplan
    原文链接:https://www.blog.google/products/marketingplatform/analytics/new-enterprise-it-controls-data-studio/
    推荐理由:当人们在整个组织中使用Data Studio时,IT管理员就要求管理如何使用Data Studio。今天,我们推出了三项免费的企业功能,为IT管理员提供了对组织中Data Studio的新可见性和控制力。

    New Enterprise IT Controls for Data Studio

    As people use Data Studio throughout their organizations, IT administrators have asked to manage how Data Studio can be used. Today, we’re launching three free enterprise features providing IT administrators new visibility and control over Data Studio in their organization.

    Organization management through Cloud Identity integration

    Data Studio now integrates with Google Cloud Identity to provide organization-wide administrative capabilities. With this integration, Cloud Identity admins can manage who can use Data Studio and how they can use it. Existing G Suite and Cloud Identity customers get Data Studio integration out of the box, and can start using the new Data Studio administration features today. Customers using other identity providers, such as Active Directory, can synchronize their users with Google Cloud Identity, so that creating, suspending, and deleting users happens in one place.

    Enterprise audit logging

    Data Studio now offers audit logging, providing IT admins organization-wide visibility into Data Studio usage, similar to that available for apps like Drive and Calendar. For example, admins can understand which users are creating Data Studio reports, and who they are sharing those reports with. Admins can also identify which reports have the most engagement, to scale successful reports across the organization. With custom alerts, you can monitor potentially risky activity like external sharing of data sources, and can export audit logs to BigQuery and use Data Studio to drill into the details. Learn more.

    Audit Log

    Organization sharing policies

    New Data Studio sharing policies allow you to reduce the risk of data exfiltration. You can set limits to prevent users from sharing reports outside of your organization, or make sure they don’t expose company data by disabling public link sharing.

    Sharing policies offer you the flexibility to define sharing permissions that meet your business needs. You can give certain users the ability to share reports externally, while allowing other users to share only within the organization. Learn more.



    There’s no charge for audit logging or sharing controls — they’re included with every edition of G Suite and Cloud Identity, including Cloud Identity Free. We’re committed to making Data Studio a solution that works for businesses of all sizes, and we’ll continue to build on this foundation. That way, everyone in your organization can uncover insights that matter, and you can rest assured knowing that your valuable business data is safe.


    下载开源日报APP:https://opensourcedaily.org/2579/
    加入我们:https://opensourcedaily.org/about/join/
    关注我们:https://opensourcedaily.org/about/love/
←上一页
1 … 89 90 91 92 93 … 262
下一页→

Proudly powered by WordPress