Implementing Machine Learning for the Offline Web with TensorFlow.js

Offline Web apps are finally a thing. The cleverest of ideas which were previously only imagination, are now reality.

Thanks to the various storage mechanisms provided by modern browsers, it is now possible to save machine learning models directly on the client side. You can then use these to produce outputs without requiring a connection with the server.

This post demonstrates how to do that.

Continue reading “Implementing Machine Learning for the Offline Web with TensorFlow.js”

Loops versus Performance

In almost every programming language, loops are so simple and obvious that they are one of the first topics to be picked up while teaching that language — JavaScript being no exception. What if I told you that in many cases, you can simplify your code and speed up your UI by avoiding loops?
Continue reading “Loops versus Performance”

This Week I Learned #6: Emoji Facts

I just discovered some less known facts about the one true international language: emoji.

  • The term emoji has nothing to do with emoticon. It actually comes from the Japanese e (絵, “picture”) + moji (文字, “character”). 😎
  • Standardized emoji have been around all the way since Unicode 1.0. However, it was not until Unicode 6.0 that they were officially recognized as emoji. 😮
  • The said Unicode 6.0 added a whopping 716 emoji to the existing 142 — the largest addition till date. 😱
  • As of the current standard, Unicode 9.0, there are 1088 emoji as single code points. This does not even include stuff like 💑, which are composed of multiple code points. (In programming terms, "💑".length === 2.) 🤓

If you want more interesting stuff about emoji, follow @notwaldorf and @kosamari on Twitter.

😃👋,
Darshak

This Week I Learned #5

This week, I came across two pieces of news that would make any Web developer jump with joy.

Till now, Progressive Web Apps could just be added to your home screen, and that was it. That was as far as you could go. This week, the Chrome team announced that soon, users will be able to “install” web apps to their device. This means, the apps will get their own storage, notifications and app drawer listing. They will essentially be turned into APKs on the fly, from what I understand.

Furthermore, Chrome is also implementing the Web Share API, which lets you provide a “share” functionality that is integrated into the user’s device, and your users can carry your content to whatever app they wish. Far better than the generic limited social network buttons in your footer.

These, along with the numerous other efforts going on to provide standards-based native functionalities to the Web, make me extremely excited about the future of the Web. I hope to share more such news in the coming weeks.

Intending no pun,
Darshak

This Week I Learned #2: Takeaways from CDS 2016

This week, some breaking news took over the social media, and Twitter alone was not enough to give me my weekly dose of knowledge. I ended up watching some talks from the Chrome Dev Summit, which happened towards the end of the week. Continue reading “This Week I Learned #2: Takeaways from CDS 2016”