New Features: Developer Tools and Workflows

  • 16 June 2022
  • 0 replies
  • 325 views
New Features: Developer Tools and Workflows
Userlevel 3
Badge +1

Our Developer Experience Team digs deep into our user experience and journey. We are excited to introduce a couple features we worked on this year.

 

Ampli - More Platforms And Source Control

 

The Ampli CLI, Ampli SDK work together to generate a tracking library based on your Tracking Plan. Different from Amplitude SDK, it provides these benefits:

  • Tracking plan is automatically converted to code, preventing the need for looking up Event definitions and converting them to Events by hand. Prevents typos and inconsistencies that can happen using untyped SDK.

  • Strong types enforce event schema at compile time via static analysis, preventing bad data before it's created.

  • Easy for developers to check implementation status. The CLI command  `ampli status` displays a list of instrumented events which are missing.

This year, we added more supported platforms, including Browser (JavaScript, TypeScript), Android (Kotlin, Java), iOS (Swift, Objective-C), JRE (Kotlin, Java).

Another major improvement is for using Ampli with source control. We have added a new command `ampli status --is-merged` to assist in coordinating branches in the tracking plan with branches in Git. This is super helpful because:

  • Enforce branch coordination between tracking plan and code with a single CLI command.

  • Removes need to update your project code after merging your tracking plan changes (a major limitation of the previous workflow).

  • Events are automatically mapped to the main tracking plan on the backend (after the Data branch is merged).

 

Next Generation Core SDKs

 

The next generation Core SDKs are structured with modern architecture and provide much improved developer experience. New SDKs help users instrument data more seamlessly and provide more control over data being instrumented using custom plugins. The key changes are:

  • Event timeline. New SDK exposes hooks before and after an event occurs. This gives the ability to filter, enrich, transform the event and have customized logic based on the event lifecycles (consent management before an event, add more context to the event, send the event to another destination).

  • Built-in type definitions. Concrete event and configuration types, easy to extend.

  • Improved interfaces. We restructured the interfaces with the following considerations: consistency across different SDKs, clear class/function names, good abstraction, easy to customize.

  • No external library dependencies. No SQLite and okhttp dependency in Android.

  • Tree-shaking support in TypeScript Web.

To learn more about the new SDKs, here are some useful links:

 

Android

Maven: https://search.maven.org/artifact/com.amplitude/analytics-android

GitHub: https://github.com/amplitude/Amplitude-Kotlin

Documentation: https://www.docs.developers.amplitude.com/data/sdks/android-kotlin/

 

Typescript Web

NPM: https://www.npmjs.com/package/@amplitude/analytics-browser

GitHub: https://github.com/amplitude/Amplitude-TypeScript

Documentation: https://www.docs.developers.amplitude.com/data/sdks/typescript-browser/

 

Python

PyPI: https://pypi.org/project/amplitude-analytics/

Github: https://github.com/amplitude/Amplitude-Python

Documentation: https://www.docs.developers.amplitude.com/data/sdks/python/

 

Jira Integration

 

While doing the instrumentation for your tracking plan, our users use some Issue Tracking Software to track the progress. We found this process is error prone, detached and costly. Because of this, we made Jira Integration to be part of our Data Planning process as an option in Amplitude CDP.

You can easily add it from the Settings page and authenticate with Jira. 

You will be able to create a Jira ticket for every source (e.g. java source) per planning branch.

Once there is an issue linked to a source, subsequent published changes will automatically be recorded as a comment to the linked Jira Issue.

This is just the start! And we would like to know more about what other tracking tools you’re using and what your data planning / instrumentation process looks like. Feel free to reach out to us!

 

This is just the start! And we would like to know more about what other tracking tools you’re using and what your data planning / instrumentation process looks like. Feel free to reach out to us!

 

What’s next

 

Over the next few months, we’ll be dedicated to expanding our SDK offerings for other platforms. Keep improving our developer user journey is also the key to our success.

We are very excited about this launch, and I hope you are too! We're always listening to our feedback, so please feel free to share your thoughts with us. You can email feature requests/feedback/questions to developer-experience@amplitude.com or contact our support team via the Help Center


0 replies

Be the first to reply!

Reply