Articles

In this article, we will talk about Git. Git it’s a version control system, a tool that tracks changes to your code and shares those changes with others. This article lists the most basic commands that a QA person/developer should know in order to master the management of GitHub repositories at a high level. It will be useful for both beginners and experienced users to review again basic day to day commands.

Setting Your Username in Git

The username is needed to bind commits to your name. This is not the same as the GitHub account username used to log in to the GitHub profile. You can set or change the username using the git config command. The new name will automatically show up in subsequent commits pushed via the command line.

Source de l’article sur DZONE

There are a lot of factors that contribute to a better user experience on a website. Pages need to load quickly to give users peace of mind and efficiency. Navigation must be clear and straightforward, with direct pathways for visitors to follow when finding your contact pages, blog posts, and products. Your colors need to work seamlessly together while providing just enough contrast in the areas that need it most.

Excellent user experience needs to be considered for every part of your website that acts as a touchpoint with a potential customer or user.

One of the most significant touchpoints of all is your forms.

All websites need some form of interactive content to thrive. Users need to be able to do something with the site, whether it’s looking for information with a search bar, contacting a team for a quote, making a booking, or completing a purchase. Forms power the majority of the interactive activities available on websites.

If you know how to master great UX on a form, you can contribute to more meaningful interactions between your brands and their customers. But not all web forms are the same. Here are some of the top types of forms you need to master and how you can optimize them.

The “Opt-In” Form

The Opt-in Form is probably the best-known form in the digital landscape. It’s essentially a form that asks visitors to “opt-in” to a specific offer. Sometimes, this means signing up for a webinar; other times, it’ll be agreeing to an email newsletter or a regular series of blog updates.

Opt-in forms grab attention quickly and ask for something specific from the audience. For instance, this example from HuffPost encourages visitors to “Subscribe to the Morning Email.”

Opt-in forms are all about generating action.

Sometimes, they’re placed at the bottom of a landing page after a company has had a chance to explain precisely what they’re offering. Other times, you’ll find the opt-in form situated on a sidebar of a website, constantly enticing people to “sign up” if they like what they see on a blog post or article.

It’s also common for opt-in forms to appear as pop-ups and exit pop-ups on modern websites. For example, a brightly colored opt-in form that promises an immediate benefit to a customer could encourage them to hand over their details before they abandon your website.

How to Design a Great Opt-In Form

So what kind of best practices go into an excellent opt-in form?

  • Start with simplicity: If you’re asking your visitors to do something, don’t overwhelm them with too big of a request straight away. Keep the form short and simple, so it doesn’t seem like too much extra work for the visitor. Something like “Subscribe to our newsletter” should ask for nothing more than an email. 
  • Highlight the benefits: Most customers won’t want to give you a place in their inbox or the opportunity to interact with them further unless you can offer something in return. Even if you’re asking for something small, like an email address, let the customer know what’s in it for them. In the HuffPost example above, the company highlights that you can wake up to the day’s “most important news.” 
  • Give the visitor the power: Let your visitor know they’re in control here. They want to see that they’re getting exactly what they need from you in exchange for their contact details. This means reassuring them that their email address won’t be used for spam, like H&B Sensors does here: 

The Contact Form 

The Contact Form is another crucial part of building an effective UX for your website – but it’s also an element that web designers and business owners often overlook. When customers decide they want to learn more about a business, they need a quick and easy way to get in touch.

Contact forms need to be easy to find and use on any website. Usually, your user will expect to see a link to the contact form situated somewhere at the bottom of your webpage. It might be called “Contact Us” or “Customer Support.” Avoid anything that would go over the user’s head.

Aside from being easy to track down, your contact form also needs to reassure an audience that they’re making the right decision by getting in touch. Therefore, the content needs to be short, sweet, and authoritative—highlight why the user might contact your company and how they can do so.

Avoid any unnecessary information in the contact form. For example, you don’t need to know your client’s age and their job to answer a question about where their nearest physical branch is. Keep form fields to the point, or you’ll chase customers away.

How to Design a Great Contact Form

Design something personalized but straightforward to make the most of your contact form. Use features like smart content and conditional logic, if possible, to adapt the page to the user’s needs. Dynamic content is becoming increasingly valuable these days. Other best practices include:

  • Set the right expectations: Let your customers know how active you are and how quickly they can expect to hear back from you. Imagery and the right fonts can also set expectations about the kind of communication your audience can expect. For example, this contact page from the Marvel app is fun and playful, like the company itself:

  • Provide multiple options: If your customer doesn’t want to use your contact form, give them another way to get in touch. Ensure the contact page includes information like where to find you on social media and your professional phone number. 
  • Simplify things on your end: To ensure that you can contact your audience as quickly as possible, allow your customers to choose a specific subject that their query is connected to. Allowing them to choose “Sales” or “Order issues” means you can automatically direct the message to the right team member on the back-end. 

The Online Payment Form 

Sometimes, when your customers have seen what you have to offer and they’ve checked out the competition, they decide to go ahead with their purchase. To facilitate this, you’re going to need an online payment form. Online forms ensure that your customers can safely enter their credit or debit card details to purchase whatever you have to offer.

Most payment processing companies like PayPal, Square, and Stripe come with payment forms included, so you can easily embed them into a website in minutes. However, there’s always the option to customize those payment forms.

For instance, ideally, you’ll need a payment form that keeps your customer on the same page, so they don’t have to log into another browser to make their purchase. The fewer transitions your client has to make, the safer they’ll feel.

How to Design a Great Payment Form

When designing any payment form, simplicity and security are the two most important factors. Your customer should be able to enter their information quickly and easily and get through the transaction process without worrying about their details.

Remember to:

  • Keep it simple: The fewer fields the visitor has to fill out, the better. Customers still feel uncomfortable sharing personal information and payment details online. Make the experience as painless as possible. If your client already has an account with your business, you might create a system that automatically fills some of the fields, such as their email address, name, and billing address. 
  • Offer the right integrations: The proper payment forms will integrate with the payment services your customers prefer to use. Options include PayPal, Stripe, Square, Verified by Visa, and Mastercard. Get a developer to integrate the right APIs with your form to give your customers the broadest range of options. 
  • Ensure security: Give customers peace of mind by providing as much security evidence as possible. An SSL certificate that places the padlock on the top of the browser next to the URL is a great way to make customers feel more secure. Integrating verification options so your customers can avoid fraud issues is another significant step. Sometimes just putting logos from the card types you accept on the page will make a customer feel more secure. 

Support Forms

Some companies bundle the contact form and the support form together. Others have a separate support form to get their queries routed directly to the people most capable of helping them. If you want to take the second route, it might be a good idea to design a “help” section on your website where you can locate the support form.

The “Help” section on a site often appears alongside other links on the footer. For instance, it could appear alongside “About” links and “Contact” options. Here’s an example of Hubspot’s Customer Support options:

The best customer support pages come with various ways for clients to help themselves and find answers to their most pressing questions. For example, you might have a search bar where your audience can search for the answers to their queries or a knowledge base full of helpful blogs.

Hubspot allows users to choose between a blog, knowledge base, academy training center, community forum, developer discussion board, and assistance from a certified partner.

How to Design a Great Customer Support Form

Designing a good customer support form is about getting your audience the information they need as quickly as possible. Once again, you’ll need to stick to as few form fields as possible here to avoid angering an already frustrated customer. Also, remember to:

  • Ask for the right information: Find out what the query is about by giving the customer a drop-box menu full of possible topics to choose from. If you need a product reference number or something similar, ask for that at the top of the form, then allow the customer to provide extra information about their query underneath. 
  • Set expectations: Let your customers know when they can expect to get a response to their concerns and provide them with advice on what to do next. For instance, you could invite them to check out your knowledge base while they wait for a response. 
  • Keep it simple: Avoid using technical jargon on your support request forms. Be direct in your requests for summaries of the issue at hand, contact information, and other supplemental data. 

Customer Feedback Forms

According to Microsoft, around 96% of customers say that customer service is crucial in determining their loyalty to a specific brand. Another 52% of global customers believe that companies need to respond to the feedback provided by customers.

To ensure your customer service strategies are on-par with what your customers expect, you need to get feedback from your audience. That’s where a feedback form comes in. Customer feedback forms often appear after a client has finished purchasing on the “thank you” screen. They may also occur after a customer has completed a service interaction online.

Here’s an example of an Apple feedback form:

How to Design a Great Customer Feedback Form

By leaving you feedback, your customer is doing you a massive favor. They’re giving you a chance to learn from your mistakes and improve the service you can give next time around. Feedback is one of the best tools for any business that wants to grow and thrive.

If you want your customers to use your feedback forms, you’ll need to make them as simple as possible. Your customers don’t have time to waste on a complex form.

  • Don’t make any fields mandatory: Don’t stop your customers from submitting a form unless they’ve completed every field. Allow them to enter the information they consider to be the most important, and that’s it. You can even fill some of the form out for your customer, if possible, by entering their name and email address if they’re already a member of your site.
  • Make it mobile responsive: Remember there are around 3.5 billion smartphone users worldwide. You can’t afford to lose feedback because your form isn’t responsive. Every form should look and feel incredible on any device. 
  • Include a rating option: If your customers don’t have much to say about your service, or they’re not wordsmiths, they might prefer a rating option instead. A one-to-five rating system that allows your customer to judge your product or service on a scale of poor to wonderful is a great way to gain quick information. Check out the Uber Engineering example here:

Though you can pre-enter some information on a feedback form to make your customer’s life easier, don’t overstep your bounds. Adding your customer’s email address to the form is fine if they’re already a customer with you. Pre-selecting the “very satisfied” rating above would look presumptuous.

Top Tips to Improve Every Form Design

The online form is an essential part of any web design project, but it’s also frequently overlooked. Unfortunately, without a good set of forms, your customers will struggle to interact with your company in a meaningful way.

When creating any form, remember:

  • Reduce friction: Reduce the friction for your customers by asking as few questions as possible. The less your customer has to answer, the better. If you can pre-populate forms with information like your customer’s name and email address, this could help. 
  • Keep it simple: Make sure that the form is clean and easy to use. Your customers shouldn’t be confused about where to click or how to submit their information. A single-column design is often better than a multi-column option.
  • Be clear in error messages: Don’t just tell your visitors that something has gone wrong. Let them know what they need to do to submit the form successfully. If possible, use inline validation with real-time feedback to let your audience know that you recognize the information they’ve submitted.
  • Keep data secure: Make sure your audience feels safe by letting them know how you will use this information and why you’re asking for it. If you’re asking for an email address, make the benefits of entering that information clear. 
  • Make fields optional: Allow your audience to add more information to a form if they want to – but don’t demand it. Give some freedom to the visitor. 

The better your forms are, the more effective your interactions with customers will be. Remember, it’s not just the face-to-face interactions that your customers judge when making decisions about your business and whether to trust you. Today’s digital world has prompted a new demand for more meaningful virtual experiences.

Your form could be the first interaction you have with a client, whether it’s a contact form, a booking form, or something else entirely. Get that right, and you can improve your chances of your customers coming back to interact with you again later.

 

Featured image via Pexels.

Source

The post The Top 5 Form Types to Use in Your Web Design  first appeared on Webdesigner Depot.

Source de l’article sur Webdesignerdepot

Many markets are saturated with competition; it’s no surprise that customers are expecting top-of-the-line experiences. Businesses must keep up with these ever-changing demands to remain competitive and drive forward.

One way to ensure customers have positive experiences is to take a look at your website. Your website is like your digital headquarters, where customers can browse through products or services, have frequently asked questions answered, and be able to reach you if they need direct support.

Making a site user-friendly and customer-centric will assist businesses while they work to build a loyal customer base. Customer happiness is more important now than ever and has the potential to make or break your business. We all know that happier customers spend more, and delighted customers will always come back for more.

Let’s explore some ways you can level up the customer experience on your website to foster customer loyalty and retention, as well as garner brand advocates for your business.

How Important Is CX?

As a site manager, your goal should be to meet customers’ needs. Creating a website is no simple task but can transform CX (customer experience).

Suppose a customer visits your site only to see a buffering symbol or a lag on their desktop or mobile device. This wouldn’t make for a positive experience, would it?

When customers have to spend extra time navigating your website to find what they’re looking for, it can directly lead to site abandonment, where customers leave the site before browsing. It’s vital to consistently monitor your website metrics to see if abandonment rates impact your overall traffic.

Customers who have enjoyable experiences browsing through your site are more likely to appreciate your brand and strongly consider purchasing whatever offerings you have.

Additionally, positive customer reviews can help your business gain new customers — word-of-mouth marketing is still relevant in 2021’s digital marketing landscape. Earning those 5-star reviews can help other potential customers see that they too could have a positive experience with your brand.

As you can see, CX is just as important as the products or services you offer, so keep that in mind as you set out on the journey to improve your website to advocate for your customer base.

Below, we’ll cover some of the most important elements and features of a strong business site so you can implement them.

Valuable Features to Include on Your Website

The features of your website are the foundation of your business. One of the best parts of building a killer website is that you can get as creative as you’d like with all of the features at your disposal.

Whether you use WordPress or another platform to host your website, you can always explore other paid services or offerings online to bring your site to the next level.

For example, the WooCommerce WordPress extension allows e-commerce sites to improve the overall appearance of their site, add customizations and, generally speaking, create a high-quality e-commerce store.

Below are some examples of elements you should consider incorporating into your web design. Offering these features will surely keep your site visible, relevant, and attractive to all types of customers.

1. Add Personalization

Every type of customer can benefit from a personalized experience, and it helps you turn them into loyal customers.

Personalization is becoming more prevalent in web design, whether it’s including past products they’ve viewed on your landing page or making it simple for them to log in to their account.

Maybe you allow your customers to create a wishlist, just as Amazon does. You could also make personalized deals or recommendations for your customers based on their past purchases or search history. When customers see this level of personalization, it may influence their purchasing decisions and make it simpler for them to order products.

2. Include Compelling and Unique Content

Every professional in the digital marketing space knows that content is king. The companies that include the most compelling content garner the most attention and increase the number of customers who make up their customer base. Here are some examples of what your content should look like:

  • Comprehensive
  • Useful
  • Accurate
  • Visually appealing
  • Helpful
  • A direct answer to a search engine query

By following these descriptions, your content will improve. Whether it’s a blog post or a photo or video, quality content is a driving factor in your user engagement. It helps to support your SEO strategy and will undoubtedly keep customers coming back.

3. Prioritize Speed and Usability

Because technology is an integral part of most people’s lives, customers expect to visit a fast, reliable website. No longer will customers wait patiently for a site to load. The dreaded buffering symbol is a clear indicator that your business is not taking customer experience into account.

It’s critical to create a website that loads quickly and is easy to use. Avoid organizing any tabs in a confusing way. Ensure that your website is visually attractive without overwhelming color schemes or photos that take up too much space.

Go for a more modern, contemporary look that’s easy on the eyes. Customers will appreciate this and will likely spend more time browsing your various website pages.

4. Focus on Navigation

Users should be able to access any page on your website with ease. They shouldn’t have to search for the right drop-down menu or type into the search bar unless they’re searching for a specific product or service.

The majority of users on a site, 70% to be exact, spend most of their time navigating freely without using the search bar. This should tell you how vital good navigation is to your business website. Placing menus on the top of your site is common practice — if you would rather place your drop-down menu somewhere else, make sure you’re putting it in a section where it’s easy to find.

Put yourself in your customers’ shoes. See what types of designs you can incorporate into your site to elevate UX and make browsing simple.

5. Make Sharing Simple

One of the best ways to grow your customer advocates is by leveraging your existing customers. Your customers should be able to easily send your product or service descriptions to their friends and family.

Rather than copying a link, include a share feature. If something on your site is worth sharing with other potential customers, make it easy for them to send it.

Social sharing plays a significant role in digital marketing — it helps to garner organic traffic to your website. You can reach a larger number of people than originally intended, which is the most important benefit to reap by making it easy to share links from your site.

6. Incorporate Chatbots

Offering customer support by using chatbots is something major companies are incorporating into their website designs.

Suppose your customer is trying to complete a purchase but runs into a problem with a coupon they’d like to use. Rather than wait on hold on the phone or for an email in their inbox a few days later, an automated chatbot can step in and assist them.

Chatbots are on the rise, and it’ll be critical for your business to include them on your site. Proactive web actions can increase your site’s conversion rates and improve the overall customer experience.

7. Allow Customer Feedback

It shouldn’t come as a surprise that allowing your customers to share their experience with your brand can help you better understand them and the solutions they’re looking for from you.

Did you know that brands with superior customer service can generate 5.7 times more revenue than their competitors? When you’re in touch with your audience, you’re better able to include features they want and need to have a positive experience. By taking advantage of customer feedback, you can make necessary changes to your site to better serve your customers.

Advocate for Your Customer Base

All of the examples listed above can help elevate your site and improve the overall experience for existing and potential customers. Isn’t that the goal of any business, regardless of industry?

To serve your customers effectively means they’ll feel valued and come back for more. Whether that’s ordering more products or requesting more services, you’ll see the benefits of including the elements we’ve covered in this post.

As a recap, here are some steps you can take to advocate for your loyal customers:

  1. Add personalization
  2. Include unique content
  3. Make your site fast and usable
  4. Provide easy navigation
  5. Allow for easy sharing
  6. Leverage chatbots
  7. Be open to feedback

Overall, customer experience will become more important in the future as customer expectations change. Standing out from your competitors is no longer an option but a necessity. So many markets are struggling to do just that — so if you’re able to offer unique features on your site, it could potentially draw more customers in and drive them to purchase.

 

Featured image via Unsplash.

Source

The post 7 Simple Ways to Boost Your Website’s CX first appeared on Webdesigner Depot.


Source de l’article sur Webdesignerdepot

In offline (Cached Exchange) mode, Microsoft Outlook stores all Exchange mailbox data in a local file termed OST file. When the Exchange connection is re-established, the modifications made by the user in offline mode are updated to the server mailbox. Exchange Server failures and catastrophes, Exchange mailbox deletions, and other events have no effect on the OST file because it is stored on the user’s PC. As a result, in the case of a disaster, Exchange administrators and end-users can use OST files to restore user mailbox data.

Scenarios in Which Converting an OST File to a PST File Is Beneficial:

  • A small number of Exchange mailboxes are removed from the server.
  • A couple of Exchange mailboxes need to be backed up. 
  • An Exchange user wishes to rebuild his OST file, however, there is some data in the OST file that has not been preserved.
  • Due to Exchange corruption, server crashes, and other factors, OST files are unavailable, and users require immediate access to their emails.

If you can log in to Outlook with the same Exchange profile, you can convert any OST file to PST using one of many techniques. Here are several natural techniques for converting OST to PST:

Source de l’article sur DZONE

Currently the most popular version control system is git and I’ll be writing this based on git and it’s functionalities and capabilities.

Git is often seen as a way to enable distributed programming i.e. multiple programmers can work on the same code repository quite easily without disturbing each others work (much). In addition to that just like other VCS’s it’s also a log of work but to my experience that part is often unfortunately neglected. What I will be focusing this time is the log part because I think it deserves more attention.

Why to create a meaningful log?

The git log should consist from small meaningful changesets where each commit addresses a single problem. By dividing the log to small commits it enables resilient way of working. Being resilient enables simple and fast procedures to rollbacks, reviews, tags, branching etc.

Lets say that a developer is implementing a REST API. The API needs a web layer that receives the HTTP requests, it probably has some sort of logic layer to do data transformations and validations and maybe some calculations and finally it has a data storage where the data is persisted. There are options how to record this work to the log. One option would be to implement the API and record a single commit or squash the commits before pushing the changes to remote so it would become a single commit. Another option would be to record commits every now and then while developing and finally push those commits as is to the remote repository. Yet another way would be to carefully pick what is recorded per commit in order to have a set of meaningful commits that each address a single issue.

Example of the first approach would be something like this:

Source de l’article sur DZONE

Productivity is a crowded space, with countless apps and services promising to make your life and business easier and more profitable. Of all the apps that make that promise, very few deliver, but we’ve found one that does: Taskade.

Flexible Planning With Taskade

Every problem is unique, and part of what defines us as creative professionals is the different ways we approach problems. What suits one person in one situation doesn’t suit another in another. This is where many planning apps fall down: they adopt one singular approach and expect users to fit around the app.

Taskade is different. Like the love-child of Trello, Notion, and Slack, Taskade uses a template approach to create a flexible planning system that you can use in whatever way you prefer.

When you open up Taskade, you’ll see some quick options: ‘blank,’ ‘weekly planner,’ ‘meeting agenda,’ and so forth. But there’s also a ‘more’ option that will give you access to the hundreds of templates Taskade supplies. There are dozens of template categories, and each category contains multiple templates that you can use to drive your planning process.

Whether you’re looking for a task list for launching on Product Hunt, a design system checklist, or a project scrum board, you’ll find the template ready and waiting for you.

If none of the predesigned options are right for the task at hand, Taskade gives you the option to create your own template from the basic building blocks of boards, actions, mind maps, charts, and lists.

Team Collaboration With Taskade

One of Taskade’s main strengths is its ability to work equally well for individuals and teams.

It makes sense when you’re evaluating a product that you do it on your own. But we encourage you to bring team members on board early in the trial because it’s when working with teams that Taskade really excels as a collaborative tool.

Once you’ve created a new planning project, you can invite your team, either by email or — if they’re already registered — by tagging them with their Taskade username.

You can assign tasks to individuals or multiple individuals (a much better option than the free-for-all you find in some to-do apps). You can also set deadlines for tasks so that everyone knows what the schedule is.

Team Chat on Taskade

Another area that Taskade excels for teams is the built-in real-time live chat. You can communicate with team members right in the project instead of jumping onto Slack or email.

For teams working remotely, or even just multi-tasking throughout the day, it’s a great way of ensuring that everyone has the information they need. As a result, mistakes are minimized, and best of all, there’s a written record that can be referred back to at any time.

Chat can be sent to the whole team, or direct messaged to an individual, so you don’t need to worry about filling up everyone’s notifications with messages that don’t apply to them.

Project Management With Taskade

If you’re working on a single project, then you probably know exactly where it is at all times. But for anyone working on multiple projects, it can be hard to keep track of everything. So Taskade has several different options for project managers.

The Mindmap section is one of the most useful parts of Taskade because it gives you a complete overview of everything in your project. You can see what has been completed and how much time it took — that way, you can assess how viable the timeline for your other tasks is.

Another great feature of Taskade is the activity feed. When one of your team makes a change to a project, it will pop up in your activity feed, and the next time you log in, you’ll see the status of your projects with a single glance.

Multi-Platform

One of our favorite aspects of Taskade is that it works equally well across different platforms. As well as the desktop web app, you’ll also find native apps in the iOS app store and the Android play store.

Syncing your account over different apps is awesome because ideas often occur at inconvenient times — on your commute, walking the dog. Even when you’re at your desk, it’s much handier to grab your phone and make notes than it is to switch to your browser and visit a site.

Easy Registration

If you’re feeling the pressure of a bulging inbox, or to-do lists on multiple post-its, then the last thing you need is another complex, confusing task to add to the pile.

Taskade is super-easy to get started with. Just click the ‘Sign up’ link in the top right of the site, and you’ll have three options: Sign up with Google, sign up with your email, or you can continue as a guest.

If you’re not sold yet, then continue as a guest — essentially a free trial — you can sign in properly later once your curiosity is satisfied.

Free to Use

Taskade is free to use on a limited basis. The free plan comes with 500Mb of storage and a maximum 25Mb file size. You can create individual tasks or whole projects, workflows, and custom templates and share tasks and projects with your team. That’s enough to help you make the most of Taskade for $0.

If you find that the generous free plan isn’t quite enough, paid plans start at just $5 per month. The paid plan gives you unlimited storage and bumps the maximum file size up to 250Mb. You have the same core features as the free plan; it’s just that they’re unlimited, which means you can do even more planning. In addition, the paid plan adds some handy extra features that are great time-savers, such as sorting tasks, creating repeat tasks, and bulk assigning tasks. Just look at how Taskade compares to similar tools.

Most professionals will get along with the free plan just fine, but $5 per month for unlimited storage is a great deal. On top of that, you have future premium features to look forward to, including a project revision history and a calendar view.

You can sign up to Taskade for free now, as a guest, with your email, or with Google.

 

[– This is a sponsored post on behalf of Taskade –]

Source

The post Collaborative Task Management with Taskade first appeared on Webdesigner Depot.


Source de l’article sur Webdesignerdepot

On June 29th, GitHub announced Copilot, an AI-powered auto-complete for programmers, prompting a debate about the ethics of borrowed code.

GitHub is one of the biggest code repositories on the Internet. It hosts billions of lines of code, creating an unparalleled dataset with which to train a coding AI. And that is exactly what OpenAI, via GitHub, thanks to its owners Microsoft has done — training Copilot using public repositories.

The chances are you haven’t tried Copilot yet, because it’s still invite-only via a VSCode plugin. People who have, are reporting that it’s a stunning tool, with a few limitations; it transforms coders from writers to editors because when code is inserted for you, you still have to read it to make sure it’s what you intended.

Some developers have cried “foul” at what they see as over-reach by a corporation unafraid of copyright infringement when long-term profits are on offer. There have also been reports of Copilot spilling private data, such as API keys. If, however, as GitHub states, the tool has been trained on publicly available code, the real question is: which genius saved an API key to a public repository.

GitHub’s defense has been that it has only trained Copilot on public code and that training AI on public datasets is considered “fair use” in the industry because any other approach is prohibitively expensive. However, as reported by The Verge, there is a growing question of what constitutes “fair use”; the TLDR being that if an application is commercial, then any work product is potentially derivative.

If a judge rules that Copilot’s code is derivative, then any code created with the tool is, by definition, derivative. Thus, we could conceivably reach the point at which a humans.txt file is required to credit everyone who deserves kudos for a site or app. It seems far-fetched, but we’re talking about a world in which restaurants serve tepid coffee for fear of litigation.

There are plenty of idealists (a group to which I could easily be accused of belonging) that nurture a soft-spot for the open-source, community-driven web. And of course, it’s true to say that many who walk the halls (or at least log into the Slack) of Microsoft, OpenAI, and GitHub are of the same inclination, contributing generously to open-source projects, mentoring, blogging, and offering a leg-up to other coders.

When I first learnt to code HTML, step one, before <p>hello World!</p> was view > developer > view source. Most human developers have been actively encouraged to look at other people’s code to understand the best way to achieve something — after all, that’s how web standards emerged.

Some individuals are perhaps owed credit for their work. One example is Robert Penner, whose work on easing functions inspired a generation of Actionscript/JavaScript coders. Penner published his functions online for free, under the MIT license; he also wrote a book which taught me, among other things, that a while loop beats a for loop, a lesson I use every day — I’d like to think the royalties bought him a small Caribbean island (or at least a vacation on one).

There is an important distinction between posting code online and publishing code examples in a book, namely that the latter is expected to be protected. Where Copilot is on questionable ground is that the AI is not a searchable database of functions, it’s code derived from specific problems. On the surface, it appears that anything Copilot produces must be derivative.

I don’t have a public GitHub repository, so OpenAI learned nothing from me. But let’s say I did. Let’s say I had posted a JavaScript-powered animation from which Copilot garnered some of its understanding. Does Microsoft owe me a fraction of its profits? Do I in turn owe Penner a fraction of mine? Does Penner owe Adobe (who bought Macromedia)? Does Adobe owe Brendan Eich (the creator of JavaScript)? Does Eich owe James Gosling (creator of Java), if not for the syntax, then for the name? And while we’re at it, which OS was Gosling using back in the mid-90s to compile his code — I doubt it was named after a fruit.

If this seems farcical, it’s because it is. But it’s a real problem created by the fact that technology is moving faster than the law. Intellectual property rights defined before the advent of the home computer cannot possibly define an AI-driven future.

 

Featured image uses images via Max Chen and Michael Dziedzic.

Source

The post Poll: The Ethical Dilemma at the Heart of GitHub’s Copilot first appeared on Webdesigner Depot.


Source de l’article sur Webdesignerdepot


Run Differentials

This tutorial shows how you can recover data from either a fat finger or malicious data attack. This tutorial can be utilized if the data issue is found within the Cockroach GC window for a particular zone configuration which by default is 25 hours. An additional tutorial will show how to recover using a backup.

Setup Movr With a Bad Actor Record

For this example, we’ll create a MOVR workload and show how to recover from a malicious attack from a user called devil. On the MOVR rides table, let’s activate an audit log so we can see all of the SQL transactions that incur on the table. While the workload is running, we’ll inject the rogue user called devil and have that user create a malicious transaction that updates all of Tyler Dalton’s transactions to be $1000.

Source de l’article sur DZONE