Friday, 30 March 2018

Transitioning Google URL Shortener to Firebase Dynamic Links

Posted by Michael Hermanto, Software Engineer, Firebase

We launched the Google URL Shortener back in 2009 as a way to help people more easily share links and measure traffic online. Since then, many popular URL shortening services have emerged and the ways people find content on the Internet have also changed dramatically, from primarily desktop webpages to apps, mobile devices, home assistants, and more.

To refocus our efforts, we're turning down support for goo.gl over the coming weeks and replacing it with Firebase Dynamic Links (FDL). FDLs are smart URLs that allow you to send existing and potential users to any location within an iOS, Android or web app. We're excited to grow and improve the product going forward. While most features of goo.gl will eventually sunset, all existing links will continue to redirect to the intended destination.

For consumers

Starting April 13, 2018, anonymous users and users who have never created short links before today will not be able to create new short links via the goo.gl console. If you are looking to create new short links, we recommend you use Firebase Dynamic Links or check out popular services like Bitly and Ow.ly as an alternative.

If you have existing goo.gl short links, you can continue to use all features of goo.gl console for a period of one year, until March 30, 2019, when we will discontinue the console. You can manage all your short links and their analytics through the goo.gl console during this period.

After March 30, 2019, all links will continue to redirect to the intended destination. Your existing short links will not be migrated to the Firebase console, however, you will be able to export your link information from the goo.gl console.

For developers

Starting May 30, 2018, only projects that have accessed URL Shortener APIs before today can create short links. To create new short links, we recommend FDL APIs. FDL short links will automatically detect the user's platform and send the user to either the web or your app, as appropriate.

If you are already calling URL Shortener APIs to manage goo.gl short links, you can continue to use them for a period of one year, until March 30, 2019, when we will discontinue the APIs.

As it is for consumers, all links will continue to redirect to the intended destination after March 30, 2019. However, existing short links will not be migrated to the Firebase console/API.

URL Shortener has been a great tool that we're proud to have built. As we look towards the future, we're excited about the possibilities of Firebase Dynamic Links, particularly when it comes to dynamic platform detection and links that survive the app installation process. We hope you are too!



from
http://developers.googleblog.com/2018/03/transitioning-google-url-shortener.html

Wednesday, 28 March 2018

UX In Contact Forms: Essentials To Turn Leads Into Conversions

Building A UX Team

(This is a sponsored article.) In my previous article, I explored the rise of design, in particular focusing on the emergence of design as a business driver. As the spotlight has focused on the potential of design to transform businesses, we’ve seen a growing need for designers — and related team members — across a wider range of specializations. These specializations include:

  • Design Researchers
  • Creative Directors
  • Content Strategists
  • Copywriters
  • Visual Designers
  • UI Designers
  • Marketers

Of course, this list isn’t exhaustive and many designers undertake a cross-section of these roles by necessity. One thing is certain, however, as our industry has matured, the number and types of roles have increased and, as UX continues to become a sought-after business differentiator, these roles will continue to diversify.

As design has become recognized as a potential driver for business growth, many companies have begun to bring user experience (UX) design in-house, building their own UX teams. Equally, as UX has grown in importance, many small businesses have been responding to the opportunity by broadening and deepening their teams, thus enabling them to undertake larger and more profitable projects.

In this article, the ninth in my ongoing series exploring user experience design, I’ll outline how to go about building a UX team, identifying the attributes to look out for when hiring team members, defining a number of core disciplines to consider when building a team, and suggesting some avenues you can explore to find team members.

T-Shaped People, FTW!

When I first starting to work on the web in the early to mid-nineties, all that was required was a knowledge of HTML (and life was so much easier!). Over time I added CSS and JavaScript to my mix of skills, keeping a close eye on developments and adding to my skill set as needed.

For some time it felt like you could hold all of the web’s tools in your head; HTML, CSS, and JavaScript were complex, of course, but they were manageable. Fast forward to today and the landscape has evolved considerably, with new tools that we can add to our toolbox developed at an increasingly rapid rate.

As UX has grown up, we’ve started to see an inevitable specialization of roles, reflecting the complexity and diversity of our industry. This shift towards specialization is to be welcomed, it echoes an industry that is not only maturing but is also reflecting on the best way to achieve different outcomes. It’s a shift that is positioning carefully considered teams front and center.

The once fashionable idea of ‘unicorns’ — who know everything there is to know about everything — has, thankfully, been superseded by a focus on building teams, comprised of specialists with a deep understanding of their respective areas, who are able to work as part of a collaborative, multidisciplinary team.

With this shift towards collaborative teams comes a shift in the types of people we need to look for when we start to build a team. To function effectively, team members need to:

  • be skilled in communication, able to express their thinking clearly to others;
  • have an appreciation of the importance of feedback, and be able to facilitate the feedback process;
  • be able to collaborate with others, working as part of a multidisciplinary team;
  • have an understanding of the broad landscape of disciplines that now comprise UX; and
  • be able to articulate and present their thinking to others.

Put simply: soft skills matter. To work in a collaborative environment requires empathy and an ability to work with others. It also requires an awareness and understanding of the various disciplines that come together to form the backbone of user experience design in the 21st century. Enter ‘T-shaped people’.

Tim Brown, the CEO of global design company IDEO, defines T-Shaped people as having two kinds of characteristics: the vertical stroke of the ‘T’ represents their depth of skill in a field; whilst the horizontal stroke of the ‘T’ represents their ability to collaborate across disciplines. Brown identifies two characteristics that T-shaped people have:

First, empathy. It’s important because it allows people to imagine the problem from another perspective – to stand in somebody else’s shoes. Second, they tend to get very enthusiastic about other people’s disciplines, to the point that they may actually start to practice them. T-shaped people have both depth and breadth in their skills.

When building a UX team it’s important to ensure that the candidates you consider possess these characteristics or, if they don’t, have the capability to learn them. By hiring, or working with, team members that possess empathy and perspective you’ll build a stronger, more effective team.

The ability to see problems from others’ perspectives is critical. Seeing a problem from the perspective of another team member underpins collaboration; equally seeing a problem from your user’s perspective is — as I’ve noted in my earlier articles in this series — critical. This ability to see problems from others’ perspectives is crucial when we build multidisciplinary teams.

A Multidisciplinary Approach

Within the field of UX, we are increasingly working with multidisciplinary team members who combine a knowledge and awareness of many branches of learning or fields of expertise. Designers will be a part of that mix, of course, but designers aren’t the only members of a team you need.

When thinking of a team it’s important to widen the frame of reference and look beyond the core strength of design. Take a look at any successful product and behind it you will see a team that is comprised of a wide range of individuals, encompassing: design across a range of aspects; business and strategy; marketing and storytelling; analytics; and many, many other disciplines.

When building a team, it’s important that the team is well-rounded with a cross-section of individuals who are used to looking at design problems in different ways. This becomes increasingly important when we consider the growing rise of digital product design.

In order to build a successful digital product, it’s important to consider:

  • Design Researchers
    The ones who drive a design based on user research and a wider understanding of the benefits of design research.
  • UX Designers
    The ones who afford a high-level view of the design process.
  • Content Strategists
    The ones who lead a website or product’s content focus, starting with content as a skeleton around which a design is built.
  • Copywriters
    The ones who create written content at both a macro- and micro-copy level.
  • Visual Designers
    The ones who create a design’s overall visual approach.
  • UI Designers
    The ones who design the interface between the product and the user, and the various interactions that underpin the design.
  • Front-End Designers and Developers
    The ones who handle the build at varying levels of complexity.

It’s a measure of how complex our industry is that we’re still finding terms to describe many of these roles. It’s also a measure of how complex our industry is that the above list is only scraping the surface.

In addition to the above list (which is broadly design-focused), it’s also important to consider project managers, business strategists, marketing experts — the list goes on. With such a long list of potential team members, it becomes quickly apparent that (good news for us!) there is considerable scope for working in our industry.

To become a lynchpin team member it helps to immerse yourself in as many of these areas as possible. The more you learn about different disciplines and their different ways of working, the more indispensable you become.

Finding Team Members

You might be considering hiring a full-time team member or a freelancer, but you still need to find these people. Where do you start and what should you look for?

First of all, if you’re considering expanding your team — and the roles you’re considering will be long term — it’s important to put some time in. Unless you’re willing to pay a recruitment firm, there’s no substitute for doing some good, old-fashioned research.

The last thing you want to do is hire someone in a hurry, then live to regret it later. Spending time getting to know different individuals and exploring their work in depth pays off in the long run. Doing so helps you to find individuals who are a better fit for your company’s culture.

Unsurprisingly, there are many design-focused communities that you can explore. As you begin your search, look for individuals who are active in those communities. It’s impossible to list every community, but you might like to consider:

  • Behance
    Owned by Adobe, Behance’s mission is to “showcase and discover the latest work from top online portfolios by creative professionals across industries.” The site’s ‘Curated Galleries’ are a great way to discover different designers organized across a range of creative fields.
  • Dribbble
    Although it’s come under fire occasionally, there’s no doubting the fact that Dribbble is a great place to discover designers. It’s known as the place “where designers get inspired and hired,” and is well worth exploring.
  • Product Hunt
    Billed as “the place to discover your next favorite thing,” Product Hunt might look a little out of place on this list, but it’s a great way to discover active participants within the design community.

In addition to the above resources, it’s also worth looking for designers who are actively working on side projects or who are contributing to open-source projects.

When interviewing potential team members, I’ll always ask if they’ve worked on any side projects. Side projects are a good indicator of a person who has a passion for their subject. They’re also a useful beacon, helping you to identify individuals who are actively learning and who have the project management skills to develop their own projects.

However, not everyone wants to undertake a side project. Another attribute that’s worth looking for is an individual’s contribution to other, perhaps open-source, projects. Someone who is actively contributing to an open-source GitHub repository is someone who has passion — and passion is hard to teach.

There are also numerous job boards, that act as a matchmaking service, connecting designers who are looking for work with companies who are interested in hiring. Adobe’s platform, Adobe Talent, offers you that ability to “hire from five million creatives on Behance.” Smashing Magazine has its very own Smashing Jobs, designed to help designers and developers alike to find jobs and connect with great companies.

In Closing

As UX matures as a discipline, so too have the number of different specializations. As the field has grown, so too have the opportunities. Instead of putting all your eggs in one basket and searching for an elusive ‘unicorn’ designer, a better approach is to build a team of individuals who can work well together.

When building a UX team, it’s important to focus on soft skills as well as hard skills. Look for T-shaped people with experience of working in a collaborative environment. And remember, a great team is comprised of individuals who work well together, so don’t forget that personality goes a long way. Building a team takes time, but the effort you put in more than pays off. The more rounded your team is, the more opportunities will present themselves to you.

This article is part of the UX design series sponsored by Adobe. Adobe XD is made for a fast and fluid UX design process, as it lets you go from idea to prototype faster. Design, prototype, and share — all in one app. You can check out more inspiring projects created with Adobe XD on Behance, and also sign up for the Adobe experience design newsletter to stay updated and informed on the latest trends and insights for UX/UI design.

Smashing Editorial (ra, il)


from
https://www.smashingmagazine.com/2018/03/building-a-ux-team/

Monday, 26 March 2018

[Video] Hamilton app built in 3 months with Flutter reaches 1M+ installs

Originally posted on Flutter's Medium by Martin Aguinis

Hamilton and Posse, a design and development agency in New York, had three short months to develop and launch mobile apps for the hit Broadway show. How did they accomplish that? Using Flutter, Google's new mobile UI framework.

Reaching millions of users — with an outstanding half a million monthly active users and featured on both the App Store and Google Play— the apps let fans enter the ticket lottery, buy merchandise, play trivia, take selfies with a #HamCam, read frequently updated news and interviews, and more.

Watch this video case study to see how Flutter continues to help apps like Hamilton succeed on iOS and Android. You can read more details about the development of this app on Posse's blog post.

Flutter is free and open source. Get started today at flutter.io. We can't wait to see what you build!



from
http://developers.googleblog.com/2018/03/video-hamilton-app-built-with-flutter.html

Why Web Application Maintenance Should Be More Of A Thing

Friday, 23 March 2018

Funding 15,000 web and android scholarship in Africa - to provide employable developer skills

Posted by William Florance, Head, Economic Impact Programs

Africa's digital journey is rapidly gaining speed. According to the recent data, over 73 million people came online in Africa for the first time in 2017- that's more than the population of the UK! This means there are now about 435 million people on the continent using the Web to engage, connect and access information online. That's a good thing! But with this growth comes with an increased need to scale efforts to make the Web more relevant and useful to African users. This will require more skilled hands working with individuals and local businesses to develop content and platforms that will support Africa's digital growth.

In July 2017, Google's CEO, Sundar Pichai, announced a pledge to provide digital skills training to ten million people in Africa, and also to provide mobile developer training to 100,000 Africans. Today, in line with that commitment, we're excited to announce the launch of our new Africa Web and Android Scholarship program aimed at providing 15,000 scholarships to developers resident in Africa countries.

Working in partnership with Udacity and Andela, we will be offering 15,000 2-month 'single course' scholarships and 500 6-month nanodegree scholarships to aspiring and professional developers across Africa. The training will be available online via the Udacity training website, and the Andela Learning Community will support the students (in Nigeria and Kenya) through mentorship, in-person meet-ups, and online communities.

In order to access the full nanodegree scholarships, learners will have to complete lessons and quizzes courses being offered under the Udacity single course scholarships (also known as challenge courses) in addition to their active participation and support of classmates in the student community. We will be offering 10,000 scholarships to beginners (with little or no programming experience) and 5,000 to professional developers (with +1 year of experience) spread across Android and mobile web development tracks. The 10,000 beginner scholarships will include Android beginner courses and basic introduction to HTML & CSS; while the 5,000 intermediate scholarships include Android fundamentals for intermediate and building offline web applications courses respectively. Both courses are taught in English through an online program on Udacity open to Africa residence. The top 500 students at the end of the challenge will earn a full Nanodegree scholarship to one of four Nanodegree programs in Android or web development.

The application period closes on April 24th. Interested or want to learn more, visit https://www.udacity.com/google-africa-scholarships?utm_source=devblog



from
http://developers.googleblog.com/2018/03/supporting-developers-in-africa.html

The Nomadic Designer: Tips And Tricks To Work On The Road

Creating A UX Strategy

(This is a sponsored article.) As designers working primarily on screen, we often think of user experience design as being primarily a screen-focused activity. In fact, user experience affects the entirety of what we build and that often includes activities that are undertaken off-screen.

To design truly memorable experiences, we need to widen our frame of reference to include all of the brand touchpoints that our users come into contact with along their customer journey. Doing so has the potential to materially impact upon business outcomes, recognizing the role that design — and user experience — can play at the heart of a wider business strategy.

Whether you’re building a website or an application, at heart you are designing for users and, as such, it’s important to consider these users at the center of a customer-focused ecosystem. Great brands are more than just logos or marques, and websites or applications, they’re about the totality of the user experience, wherever a customer comes into contact with the brand.

This expanded design focus — considering touchpoints both on- and off-screen — becomes particularly important as our role as designers widens out to design the entirety of the experience considering multiple points of contact. It’s not uncommon for the websites and apps we build to be a part of a wider, design-focused ecosystem — and that’s where UX strategy comes in.

Over the last few years, we have seen designers move up the chain of command and, thankfully, we are starting to see designers occupy senior roles within organizations. The emergence of designers as part of the C-Suite in companies is a welcome development and, with it, we are seeing the emergence of CDOs, Chief Design Officers.

As James Pallister put it in "The Secrets of the Chief Design Officer," an article exploring the CDO phenomenon written for the UK’s Design Council:

"As Apple’s valuation shot higher and higher in recent years, a flurry of major corporations — Philips, PepsiCo, Hyundai &mdahs; announced the appointments of Chief Design Officers to their boards.

This was no mere coincidence. Seeking to emulate the stellar success of design-led businesses like Apple, global companies are pouring investment into design."

This investment in, and appreciation of, design has been long overdue and is beginning to impact upon our day-to-day role as designers.

Forward-thinking companies are elevating the role of designers within their hierarchies and, equally importantly, stressing the importance of design thinking as a core, strategic business driver. As a result, we are seeing design driving company-wide business innovation, creating better products and more engaged relationships with customers.

As this trend continues, giving designers a seat at the top table, it’s important to widen our scope and consider UX strategy in a holistic manner. In this article, the eighth in my ongoing series exploring user experience design, I’ll open the aperture a little to consider how design impacts beyond the world of screens as part of a wider strategy.

Considering Customer Journeys

Before users come into contact with a website or an app, they will likely have been in contact with a brand in other ways — often off-screen. When considering design in the widest sense, it’s important to focus on the entirety of the customer journey, designing every point of contact between a user and a brand.

Forrester, the market research company, defines the customer journey as follows:

"The customer journey spans a variety of touchpoints by which the customer moves from awareness to engagement and purchase. Successful brands focus on developing a seamless experience that ensures each touchpoint interconnects and contributes to the overall journey."

This idea — of a seamless and well-designed experience and a journey through a brand — should lie at the heart of a considered UX strategy. To design truly memorable experiences, we need to focus not just on websites or apps, but on all of the touchpoints a user might come into contact with.

Consider the Apple Store and its role acting as a beacon for Apple and all of its products. The Apple Store is, of course, an offline destination, but that doesn't mean that the user experience of the store hasn't been designed down to the last detail. The store is just one part of Apple’s wider engagement strategy, driving awareness of the business.

The Apple Store is an entry point into Apple's ecosystem and, as such, it's important that it's considered in a holistic manner: Every aspect of it is designed.

Jesse James Garrett, the founder of Adaptive Path which is an end-to-end experience design company, considers this all-embracing approach in an excellent article, "Six Design Lessons From the Apple Store," identifying a series of lessons we can learn from and apply to our designs. As Garrett notes:

"Apple wants to sell products, but their first priority is to make you want the products. And that desire has to begin with your experience of the products in the store."

Seen through this lens, it becomes clear that the products we design are often just one aspect of a larger system, every aspect of which needs to be designed. As our industry has matured, we’ve started to draw lessons from other disciplines, including service design, considering every point as part of a broader service journey, helping us to situate our products within a wider context.

If service design is new to you, Nielsen Norman Group (helpful as ever), have an excellent primer on the discipline named "Service Design 101" which is well worth reading to gain an understanding of how a focus on service design can map over to other disciplines.

When designing a website or an app, it’s important to consider the totality of the customer journey and focus on all of the touchpoints a user will come into contact with. Do so, and we can deliver better and more memorable user experiences.

Designing Touchpoints

As our industry has evolved, we’ve begun to see our products less as standalone experiences, but as part of a wider network of experiences comprised of ‘touchpoints’ — all of which need to be designed.

Touchpoints are all the points at which a user comes into contact with a brand. As designers, our role is expanding to encompass a consideration of these touchpoints, as a part of a broader, connected UX strategy.

With the emergence of smartphones, tablets, wearables and connected products our scope has expanded, widening out to consider multiple points at which users come into contact with the brands we are designing.

When considering a UX strategy, it helps to spend some time listing all of the points at which a user will come into contact with the brand. These include:

  • Websites,
  • Apps and mobile experiences,
  • Email,
  • Support services,
  • Social media.

In addition to these digital points of contact, it’s important to consider >non-digital points of contact, too. These off-screen points of contact include everything, from how someone answers the phone to the packaging of physical products.

To aid with this, it helps to develop a ‘touchpoints matrix’ — a visual framework that allows a designer to join the dots of the overall user experience. This matrix helps you to visually map out all of the different devices and contexts in which a user will come into contact with your brand.

The idea of a touchpoints matrix was conceived by Gianluca Brugnoli — a teacher at Politecnico di Milano and designer at Frog Design — as a tool that fuses customer journey mapping with system mapping, which can be used as the basis for considering how different user personas come into contact with and move through a brand.

Roberta Tassi, as part of her excellent website Service Design Tools — "an open collection of communication tools used in design processes that deal with complex systems" — provides an excellent primer on how a touchpoints matrix can be used as part of a holistic design strategy. Tassi provides a helpful overview, and I’d recommend bookmarking and exploring the website — it’s a comprehensive resource.

As she summarises:

"The matrix brings a deeper comprehension of interactions and facilitates further development of the opportunities given by the system — of the possible entry points and paths — shifting the focus of the design activities to connections."

This shift — from stand-alone to connected experiences — is critically important in the development of a ‘joined up’ UX strategy.

When you embark upon developing and mapping a broader UX strategy, a touchpoints matrix helps you to see how the different nodes of a design join up to become part of an integrated and connected experience or an 'ecosystem.'

Building Ecosystems

When we holistically consider our role as designers, we can start to explore the design of the whole experience: from initial contact with a brand offline, through engaging with that brand digitally. Collectively, these amount to designing a brand ecosystem.

Ecosystems aren't just for big brands — like Facebook, Instagram or Twitter — they are increasingly for everything we design. In a world that is ever more connected, what we design doesn’t stand in isolation. As such, we need to consider both context and scope as part of an integrated strategy.

In addition to considering the design of products, we also need to consider the wider ecosystem that these products sit within. For example, when considering the design of applications — whether web-based or native — we also need to consider: the user’s first point of contact and how we drive discovery; the experience while using the application itself; and addressing wider issues (such as offering users support).

All of the aspects of an ecosystem need to be designed so that we deliver great user experiences at every point in the process. This includes:

  • The process of discovery, through social and other channels;
  • The design of a company or application’s website, so that the story that’s told is consistent and engaging;
  • The content of email campaigns to ensure they’re equally considered, especially if there are multiple email campaigns targeted at different audiences;
  • The packaging, when we’re designing physical, connected products; and
  • The support we offer, ensuring that customers are looked after at every point of the journey, especially when issues arise.

This list is just the tip of the proverbial iceberg, but it clearly shows that there are multiple points on a customer’s journey that need to be designed. A considered UX strategy helps us to deliver on all of these aspects of an ecosystem and become increasingly important as the ecosystems we design become richer and more complex.

In Closing

The opportunities ahead are fantastic for designers working in this industry. The landscape we are designing for is evolving rapidly and, if we're to stay ahead of the game, it's important that we turn our attention towards the design of systems in addition to products. This involves an understanding of UX strategy in the broadest sense.

When embarking upon the design of a new website or product, or undertaking a redesign, it’s important to widen the frame of reference. Taking a step back and considering the entirety of the user experience leads to better and more memorable experiences.

By considering the entirety of the customer journey and all the touchpoints along the way we can create more robust, connected experiences. By focusing on the design of holistic experiences, we can delight users, ensuring they’re happy with the entire experience we have crafted.

This article is part of the UX design series sponsored by Adobe. Adobe XD is made for a fast and fluid UX design process, as it lets you go from idea to prototype faster. Design, prototype, and share — all in one app. You can check out more inspiring projects created with Adobe XD on Behance, and also sign up for the Adobe experience design newsletter to stay updated and informed on the latest trends and insights for UX/UI design.

Smashing Editorial (ra, yk, il)


from
https://www.smashingmagazine.com/2018/03/creating-a-ux-strategy/

Monday, 19 March 2018

Firebase Crashlytics graduates from beta

Originally posted on the Firebase Blog by Jason St. Pierre, Product Manager.

Back in October, we were thrilled to launch a beta version of Firebase Crashlytics. As the top ranked mobile app crash reporter for over 3 years running, Crashlytics helps you track, prioritize, and fix stability issues in realtime. It's been exciting to see all the positive reactions, as thousands of you have upgraded to Crashlytics in Firebase!

Today, we're graduating Firebase Crashlytics out of beta. As the default crash reporter for Firebase going forward, Crashlytics is the next evolution of the crash reporting capabilities of our platform. It empowers you to achieve everything you want to with Firebase Crash Reporting, plus much more.

This release include several major new features in addition to our stamp of approval when it comes to service reliability. Here's what's new.

Integration with Analytics events

We heard from many of you that you love Firebase Crash Reporting's "breadcrumbs" feature. (Breadcrumbs are the automatically created Analytics events that help you retrace user actions preceding a crash.) Starting today, you can see these breadcrumbs within the Crashlytics section of the Firebase console, helping you to triage issues more easily.

To use breadcrumbs on Crashlytics, install the latest SDK and enable Google Analytics for Firebase. If you already have Analytics enabled, the feature will automatically start working.

Crash insights

By broadly analyzing aggregated crash data for common trends, Crashlytics automatically highlights potential root causes and gives you additional context on the underlying problems. For example, it can reveal how widespread incorrect UIKit rendering was in your app so you would know to address that issue first. Crash insights allows you to make more informed decisions on what actions to take, save time on triaging issues, and maximize the impact of your debugging efforts.

From our community:

"In the few weeks that we've been working with Crashlytics' crash insights, it's been quite helpful on a few particularly pesky issues. The description and quality of the linked resources makes it easy to immediately start debugging."

- Marc Bernstein, Software Development Team Lead, Hudl

Pinning important builds

Generally, you have a few builds you care most about, while others aren't as important at the moment. With this new release of Crashlytics, you can now "pin" your most important builds which will appear at the top of the console. Your pinned builds will also appear on your teammates' consoles so it's easier to collaborate with them. This can be especially helpful when you have a large team with hundreds of builds and millions of users.

dSYM uploading

To show you stability issues, Crashlytics automatically uploads your dSYM files in the background to symbolicate your crashes. However, some complex situations can arise (i.e. Bitcode compiled apps) and prevent your dSYMs from being uploaded properly. That's why today we're also releasing a new dSYM uploader tool within your Crashlytics console. Now, you can manually upload your dSYM for cases where it cannot be automatically uploaded.

Firebase's default crash reporter

With today's GA release of Firebase Crashlytics, we've decided to sunset Firebase Crash Reporting, so we can best serve you by focusing our efforts on one crash reporter. Starting today, you'll notice the console has changed to only list Crashlytics in the navigation. If you need to access your existing crash data in Firebase Crash Reporting, you can use the app picker to switch from Crashlytics to Crash Reporting.

Firebase Crash Reporting will continue to be functional until September 8th, 2018 - at which point it will be retired fully.

Upgrading to Crashlytics is easy: just visit your project's console, choose Crashlytics in the left navigation and click "Set up Crashlytics":

Linking Fabric and Firebase Crashlytics

If you're currently using both Firebase and Fabric, you can now link the two to see your existing crash data within the Firebase console. To get started, click "Link app in Fabric" within the console and go through the flow on fabric.io:

If you are only using Fabric right now, you don't need to take any action. We'll be building out a new flow in the coming months to help you seamlessly link your existing app(s) from Fabric to Firebase. In the meantime, we encourage you to try other Firebase products.

We are excited to bring you the best-in class crash reporter in the Firebase console. As always, let us know your thoughts and we look forward to continuing to improve Crashlytics. Happy debugging!



from
http://developers.googleblog.com/2018/03/firebase-crashlytics-graduates-from-beta.html

Getting Started With The Web MIDI API

Friday, 16 March 2018

Artifact management for open source software

Posted by Kit Merker, JFrog

It's often said that open source is free like speech, not free like beer. But every so often, the developers behind an open source project can take advantage of free services to make their project better.

We believe in supporting the good work of open source projects to help the maintainers, who do an often thankless job, to be more productive.


Last year, we collaborated with Google to announce the availability of Artifactory Pro hosted on Google Cloud Platform free of charge for qualifying open source projects. The idea was to make sure that open source maintainers could reliably share their build outputs between team members for development, testing and deployment. This will help ensure that the open source projects which developers around the world rely on are easy to consume.

Since the announcement, over 30 projects have qualified for and joined, including OpenMRS, Psono, and Grails.

If you run an open source project and are interested, we encourage you to apply.



from
http://developers.googleblog.com/2018/03/artifact-management-for-open-source.html

Monthly Web Development Update 3/2018: Service Workers, Building A CDN, And Cheating At Design

Ethical Design: The Practical Getting-Started Guide


Thursday, 15 March 2018

Cross-platform GUIs with open source .NET using Eto.Forms

Amazing Cross Platform ANSI art editorThis is one of those "Did you know you could do THAT?" Many folks have figured out that C#/F#/.NET is cross-platform and open0source and runs on basically any operating system. People are using it to create micro services, web sites, and webAPI's all over. Not to mention iPhone/Android apps with Xamarin and video games with Unity and MonoGame.

But what about cross platform UIs?

While not officially supported by Microsoft - you can do some awesome stuff...as is how Open Source is supposed to work! Remember that there's a family of .NET Runtimes now, there's the .NET Framework on Windows, there's xplat .NET Core, and there's xplat Mono.

Eto.Forms has been in development since 2012 and is a cross-platform framework for creating GUI (Graphical User Interface, natch) applications with .NET that run across multiple platforms using their native toolkit. Not like Java in the 90s with custom painted buttons on canvas.

It's being used for real stuff! In fact, PabloDraw is an Ansi/Ascii text editor that you didn't know you needed in your life. But you do. It runs on Windows, Mac, and Linux and was written using Eto.Forms but has a native UI on each platform. Be sure to check out Curtis Wensley's Twitter account for some cool examples of what PabloDraw and Eto.Forms can do!

  • OS X: MonoMac or Xamarin.Mac (and also iOS via Xamarin)
  • Linux: GTK# 2 or 3
  • Windows: Windows Forms (using GDI or Direct2D) or WPF

Here's an example Hello World. Note that it's not just Code First, you can also use Xaml, or even Json (.jeto) to layout your forms!

using Eto.Forms;

using Eto.Drawing;

public class MyForm : Form
{
public MyForm ()
{
Title = "My Cross-Platform App";
ClientSize = new Size(200, 200);
Content = new Label { Text = "Hello World!" };
}

[STAThread]
static void Main()
{
new Application().Run(new MyForm());
}
}

Or I can just File | New Project with their Visual Studio Extension. You should definitely give it a try.

image

Even on the same platform (Windows in the below example) amazingly Eto.Forms can use whatever Native Controls you prefer. Here's a great example zip that has precompiled test apps.

WinForms, WPF, and Direct2D apps

Once you've installed a new version of Mono on Ubuntu, you can run the same sample as Gtk3, as I'm doing here in a VM. AMAZING.

image

Here's some example applications that are in the wild, using Eto.Forms:

There's so much cool stuff happening in open source .NET right now, and Eto.Forms is actively looking for help. Go check out their excellent Wiki, read the Tutorials, and maybe get involved!


Sponsor: Get the latest JetBrains Rider for debugging third-party .NET code, Smart Step Into, more debugger improvements, C# Interactive, new project wizard, and formatting code in columns.



© 2017 Scott Hanselman. All rights reserved.
     


from
http://feeds.hanselman.com/~/532839470/0/scotthanselman~Crossplatform-GUIs-with-open-source-NET-using-EtoForms.aspx

Join the “Build Actions for Your Community” Event Series

Posted by Ido Green, Developer Advocate

Ever wanted to learn about developing for the Google Assistant and meet other developers that are passionate about conversational UI? Well, we've got some good news!

Today, we are launching a global series of events about Actions on Google, run by Google Developers Groups (GDG) and other community groups. In these events, you'll be able to meet other developers and go together through educational content, uniquely crafted for these events by Google engineers. This includes tutorials on how to build your first Action and advanced sessions on how to use more complex features of the platform. By the end of the event you attend, you'll be able to build an Action for your community - be it your hometown, your professional network, or interest group.

And if you don't see an event near you, don't worry - you can always organize your own. We'll help!

It's going to be a great year for Actions developers. Please join us and check out the dedicated event website with all the event details and more information: developers.google.com/events/buildactions!



from
http://developers.googleblog.com/2018/03/join-build-actions-for-your-community.html

How BBC Interactive Content Works Across AMP, Apps, And The Web

Wednesday, 14 March 2018

Open Sourcing Resonance Audio

Posted by Eric Mauskopf, Product Manager

Spatial audio adds to your sense of presence when you're in VR or AR, making it feel and sound, like you're surrounded by a virtual or augmented world. And regardless of the display hardware you're using, spatial audio makes it possible to hear sounds coming from all around you.

Resonance Audio, our spatial audio SDK launched last year, enables developers to create more realistic VR and AR experiences on mobile and desktop. We've seen a number of exciting experiences emerge across a variety of platforms using our SDK. Recent examples include apps like Pixar's Coco VR for Gear VR, Disney's Star WarsTM: Jedi Challenges AR app for Android and iOS, and Runaway's Flutter VR for Daydream, which all used Resonance Audio technology.

To accelerate adoption of immersive audio technology and strengthen the developer community around it, we’re opening Resonance Audio to a community-driven development model. By creating an open source spatial audio project optimized for mobile and desktop computing, any platform or software development tool provider can easily integrate with Resonance Audio. More cross-platform and tooling support means more distribution opportunities for content creators, without the worry of investing in costly porting projects.

What's Included in the Open Source Project

As part of our open source project, we're providing a reference implementation of YouTube's Ambisonic-based spatial audio decoder, compatible with the same Ambisonics format (Ambix ACN/SN3D) used by others in the industry. Using our reference implementation, developers can easily render Ambisonic content in their VR media and other applications, while benefiting from Ambisonics open source, royalty-free model. The project also includes encoding, sound field manipulation and decoding techniques, as well as head related transfer functions (HRTFs) that we've used to achieve rich spatial audio that scales across a wide spectrum of device types and platforms. Lastly, we're making our entire library of highly optimized DSP classes and functions, open to all. This includes resamplers, convolvers, filters, delay lines and other DSP capabilities. Additionally, developers can now use Resonance Audio's brand new Spectral Reverb, an efficient, high quality, constant complexity reverb effect, in their own projects.

We've open sourced Resonance Audio as a standalone library and associated engine plugins, VST plugin, tutorials, and examples with the Apache 2.0 license. Most importantly, this means Resonance Audio is yours, so you're free to use Resonance Audio in your projects, no matter where you work. And if you see something you'd like to improve, submit a GitHub pull request to be reviewed by the Resonance Audio project committers. While the engine plugins for Unity, Unreal, FMOD, and Wwise will remain open source, going forward they will be maintained by project committers from our partners, Unity, Epic, Firelight Technologies, and Audiokinetic, respectively.

If you're interested in learning more about Resonance Audio, check out the documentation on our developer site. If you want to get more involved, visit our GitHub to access the source code, build the project, download the latest release, or even start contributing. We're looking forward to building the future of immersive audio with all of you.



from
http://developers.googleblog.com/2018/03/resonance-audio-goes-open-source.html

How To Make A WordPress Plugin Extensible