By now you must have heard this buzz word called “ Progressive Web App ”. Let me give you a simple definition about PWAs.
Progressive
Web Apps are Web Apps which combines the best features of Web and
Native Apps. It is progressive because it is constantly progressing.
Why Progressive Web Apps?
Now let’s talk about the “WHY”. Why Frances Berriman and Alex Russell came up with a concept called Progressive Web Apps? Before that let’s understand what problems does it solve.
Problems with Native Apps?
We
all have used Android or iOS apps on our smartphones. We use them for
all kinds of thing. But while installing any Android/iOS apps we go
through these problems :
Is this app worth downloading?
Do I have enough space?
My available data is not sufficient.
One recent survey shows that people are turning away from Android/iOS apps,
because not all app experiences are satisfying or worthwhile. Some
people simply don’t want any more apps on their phone, some even
hesitate to download any app.
If
you take a look at the apps installed on your mobile right now there
might be at least a dozen apps that you do not use regularly. Sometimes
apps only works good when the phone has an active internet connection.
The
irony is that most of the apps have a fully responsive website
performing the same functions. So why waste your precious disk space and
your internet data on your smartphone by installing the native app? The
average size of apps that we install from play store/app stores would
range from 30–200MB. Moreover, these app needs to updated every week!
But Progressive Web Apps are within some
KBs and are automatically updated. Thanks to service worker. 🙂
What if a website can do that and much more than a Native app? This is what Progressive Web Apps (PWA) are trying to accomplish.
In short, Progressive web apps combine everything that is great about a native mobile application with everything that is great about a mobile website.
Some other ways I like to describe them:
“The best of the web, plus the best of native apps”
Progressive — The word progressive means it works for every user, regardless of browser choice because they’re built with progressive enhancement as a core tenet.
Responsive — Automatically adjustable to any form: desktop, mobile, tablet etc.
Load Time — Progressive Web Apps are instantly available
App-like — Feels like a mobile app with app-style interactions since it’s built on the app shell model.
Fresh — Always up-to-date so you do not need to update it again and again like any other Android/iOS apps.
Safe — Served via HTTPS to ensure content is securely delivered
Engaging — Features like push notifications, etc. makes it very engaging.
Installable — Allows users to install the website as an app on their home screen without the taking user to an app store.
Linkable — Easily shared via a URL and do not require complex installation.
Benefits of making a Progressive Web App rather than building a fully functional Android App?
Cost Effective
— For an app publisher, the biggest advantage is the cost saving in
terms of app development and maintenance. Because it is assumed that
making a website is lot more easier than making a Android App.
Cross Platform—
Unlike any other apps, Progressive Web Apps are not restricted to any
specific platform. That means you do not need to develop separate
versions of app for different platforms.
10 REASONS PROGRESSIVE WEB APPS WILL BE THE FUTURE OF APPS
Flipkart,
India’s largest e-commerce site, decided to combine their web presence
and native app into a Progressive Web Application that has resulted in a
70% increase in conversions. Flipkart’s PWA takes merely 100KB to
download, is 100 times smaller than the 10MB Android app and 300 times
smaller than the iOS app. Repeat visits take less than 10KB to download.
How to use a Progressive Web App?
Probably,
you must be wondering how to use a Progressive Web App! Well, you can
just click on any links mentioned above. But provided that you must be
using a smart phone in order to install it your own device.
Now let’s click open Flipkart in chrome. ( You must be using a Mobile Device ). Below are some screenshots which demonstrates the installation of a PWA.
Microsoft is supporting Google’s Progressive Web Apps platform and that’s great news for everyone.
Microsoft recently announced
that Progressive Web Apps (PWA) will soon be supported by the Microsoft
Edge web browser. Moreover, a few apps hitting the Windows Store — like
Slack and Trello — are now mixing PWA with Electron and elements of the Universal Windows Platform (UWP).
My colleagues and I wanted to create something that would make people go “wow” at our latest hackathon.
Because
imitation is the sincerest form of flattery and IoT is incredibly fun
to work with, we decided to create our own version of Amazon Go.
Before I explain what it took to make this, here’s the 3 minute demo of what we built!
There were four of us. Ruslan,
a great full-stack developer who had experience working with Python.
John, an amazing iOS developer. Soheil, another great full-stack
developer who had experience with Raspberry Pi. And finally, there was
me, on the tail end of an Android developer internship.
I
quickly realized that there were a lot of moving parts to this project.
Amazon Go works on the basis of real-time proximity sensors in
conjunction with a real-time database of customers and their carts.
We
also wanted to take things a step further and make the entry/exit
experience seamless. We wanted to let people enter and exit the store
without needing to tap their phones.
In
order to engage users as a consumer-facing product, our app would need a
well-crafted user interface, like the real Amazon Go.
On
the day before the hackathon, I put together a pseudo-design doc
outlining what we needed to do within the 36 hour deadline. I
incorporated the strengths of our team and the equipment at hand. The
full hastily assembled design doc can be seen below.
There were six main components to EZShop, our version of Amazon Go.
The Kairos Facial Recognition API
The Kairos facial recognition API
was a fundamental component for us. It abstracted the ability to
identify and store unique faces. It had two APIs that we used: /enroll and /verify.
/enroll is described as:
Takes a photo, finds the faces within it, and stores the faces into a gallery you create.
We enrolled all new customers into a single “EZShop” gallery. A unique face_id attribute would be returned and stored with the customer’s registered name in our real-time database.
When we wanted to verify a potential customer’s image, we would POST it to the /verify endpoint. This would return the face_id with the highest probability of a match.
In
a real-world implementation, it probably would have been a better idea
to use a natively implemented facial recognition pipeline with
TensorFlow instead of a network API. But given our time constraints, the
API served us very well.
The Realtime Firebase Database
The
Firebase database was another fundamental piece to our puzzle. Every
other component interacted with it in real time. Firebase allows
customized change listeners to be created upon any data within the
database. That feature, coupled with the easy set-up process, made it a
no brainer to use.
The
schema was incredibly simple. The database stored an array of items and
an array of users. The following is an example JSON skeleton of our
database:
New users would be added to the array of users in our database after registering with the Kairos API. Upon entry or exit, the customer’s boolean in_store attribute would be updated, which would be reflected in the manager and personal app UIs.
Customers picking up an item would result in an updated item stock. Upon recognizing which customer picked up what item, the item’s ID would be added to the customer’s items_picked_up array.
I had planned for a cloud-hosted Node/Flask server that would route all activity from one device to another, but the team decided that it was much more efficient (although more hacky) for everybody to work directly upon the Firebase database.
The Manager and Personal Customer Apps
John, being the iOS wizard that he is, finished these applications in the first 12 hours of the hackathon! He really excelled at designing user-friendly and accessible apps.
The Manager App
This iPad application registered new customers into our Kairos API and Firebase database. It also displayed all customers in the store and the inventory of store items. The ability to interact directly with the Firebase database and observe changes made to it (e.g. when a customer’s in_store attribute changes from true to false) made this a relatively painless process. The app was a great customer-facing addition to our demo.
The Personal Shopping App
Once the customer was registered, we would hand a phone with this app installed to the customer. They would log in with their face (Kairos would recognize and authenticate). Any updates to their cart would be shown on the phone instantly. Upon exiting the store, the customer would also receive a push notification on this phone stating the total amount they spent.
The Item Rack, Sensors, and Camera
Soheil and Ruslan worked tirelessly for hours to perfect the design of the item shelf apparatus and the underlying Pi Python scripts.
There were three items positioned in rows. At the end of two rows, an ultrasonic proximity sensor was attached. We only had two ultrasonic sensors, so the third row had a light sensor under the items, which did not work as seamlessly. The ultrasonic sensors were connected to the Raspberry Pi that processed the readings of the distance from the next closest object via simple Python scripts (either the closest item or the end of the rack). The light sensor detected a “dark” or “light” state (dark if the item was on top of it, light otherwise).
When an item was lifted, the sensor’s reading would change and trigger an update to the item’s stock in the database. The camera (Android phone) positioned at the top of the tower would detect this change and attempt to recognize the customer picking up the item. The item would then instantly be added to that customer’s cart.
Entrance and Exit Cameras
I opted to use Android phones as our facial recognition cameras, due to my relative expertise with Android and the easy coupling phones provide when taking images and processing them.
The phones were rigged on both sides of a camera tripod, one side at the store’s entrance, and the other at the store exit.
Google has an incredibly useful Face API that implements a native pipeline for detecting human faces and other related useful attributes. I used this API to handle the heavy lifting for facial recognition.
In particular, the API provided an approximate distance of a detected face from the camera. Once a customer’s face was within a close distance, I would take a snapshot of the customer, verify it against the Kairos API to ensure the customer existed in our database, and then update the Firebase database with the customer’s in-store status.
I also added a personalized text-to-speech greeting upon recognizing the customer. That really ended up wowing everybody who used it.
The result of this implementation can be seen here:
Once the customer left the store, the exit-detection state of the Android application was responsible for retrieving the items the customer picked up from the database, calculating the total amount the customer spent, and then sending a push notification to the customer’s personal app via Firebase Cloud Messaging.
Of the 36 hours, we slept for about 6. We spent our entire time confined to a classroom in the middle of downtown Toronto. There were countless frustrating bugs and implementation roadblocks we had to overcome. There were some bugs in our demo that you probably noticed, such as the cameras failing to recognize several people in the same shot.
We would have also liked to implement additional features, such as detecting customers putting items back on the rack and adding a wider variety of items.
Our project ended up winning first place at the hackathon. We set up an interactive booth for an hour (the Chipotle box castle that can be seen in the title picture) and had over a hundred people walk through our shop. People would sign up with a picture, log into the shopping app, walk into the store, pick up an item, walk out, and get notified of their bill instantly. No cashiers, no lines, no receipts, and a very enjoyable user experience.
I was proud of the way our team played to each individual’s strengths and created a well put-together full-stack IoT project in the span of a few hours. It was an incredibly rewarding feeling for everybody, and it’s something I hope to replicate in my career in the future.
I hope this gave you some insight into what goes on behind the scenes of a large, rapidly prototyped, and hacky hackathon project such as EZShop.
Want
to start 2018 off as a developer? Well check out DevFreeBooks! Here you
will find over 150 books, the best part about it is, the books are
FREE! You can check them out here.
Feather
is a large collection of open source icons that look stunning! Each
icon is designed on a 24x24 grid with an emphasis on simplicity,
consistency and readability. Great if you need some icons in one of your
projects!
Are
you designing an iOS, Android, or React Native app? If so, check out
Lottie!Lottie is an iOS, Android, and React Native library that renders
After Effects animations in real time, allowing apps to use animations
as easily as they use static images.
Were
you ever currious and wanted to know what powers a website? Well
WhatRuns will be useful for you! WhatRuns is a free research and
competitive intelligence tool for developers, designers and salespeople
to know the technologies used on any website.
Kite
is a heads up display (HUD) for programmers that surfaces proven
engineering knowledge in a live internet connected environment helping
developers write better code, faster. Kite is the first tool to offer a
connected way to program; it is integrated with text editors and it uses
type inference to reveal examples as programmers type without having to
leave the screen for a web browser.
Perfect
for developers starting out, Code to go helps developers learning
JavaScript find up to date, accurate and ready to use snippets of
JavaScript code for common use cases.
Over
170 responsive design blocks ready to be used in your web or mobile
apps. All blocks are based on the Bootstrap 4 Library, and they are the
building blocks for beautiful websites.
We, at Dvlpr Stash
hope that you find these resources useful, and as a thank you for
everything, we’d like you give you 20% off of everything in our store.
Just use the coupon code ‘DEVELOPER2018’ during checkout. We wish you
guys a very Happy New Year and may 2018 be your best year to date!
The people have spoken! (But let’s run the numbers anyway).
On the 19th of December 2017, Jay Boston
hosted his own electric skateboard awards initiative. A cool little
idea, particularly considering it was the electric skateboard community
itself deciding who would receive the honors.
1,387
people participated in an online survey that decided the winners in
each category. Granted, I’m sure a lot of the respondents were
Australian, hence the results seemed a little top heavy towards boards
that are easily accessible to us here downunder. Hopefully the event
garners a little more international participation each year to help even
out the results a bit. There were categories where such boards as Metroboard, Carvon and Trampa
should have been mentioned, but they were no where to be seen!
Nevertheless, it’s a great initiative and will hopefully grow from
strength to strength in the coming years. A quick shout-out to Jay for
having me on as a guest — cheers mate!
The Enertion Raptor 2 was crowned the overall winner of the best electric skateboard of 2017 — as voted for by the people.
You can check out the video of the live event below:
Nominations
were only open to boards that had actually delivered production units
to customers in 2017. Enertion, with just under a couple of hundred
Raptor 2 units in the field at the time the awards were streamed, got in
by the skin of their teeth. However, the fact that the Raptor 2 won
tells us that those people who have a Raptor 2, as well as the multitude
of people who have tested the board on ride days and events, are
clearly very, VERY impressed with Enertion’s end result.
I
thought it might be interesting to compare the peoples choice with
something a little more academic, finishing off with a bit of commentary
regarding the results and any differences between them.
Below I’ve selected what are arguably the 10 most popular production boards of 2017.
(Boards
selected are single and dual drive boards in street configuration only.
This analysis is focused on the upper end of the market towards boards
that might be considered “premium” or “top-tier” by companies owned and
operated from such places as the United States, Australia and Europe).
Top Speed: 24mph (38kph)| Range: 25 miles (40km)| Hills: 30% | RRP: $1899 USD
A couple of notes on the above:
All prices are RRP in USD (specials, sales, shipping, taxes and other
fluctuations are not taken into consideration). All specs are taken
directly from the US or international websites of the board
manufacturers themselves (correct as of December 2017). Boosted finally
announced the release of their extended range battery in late 2017,
which “doubles the range”. However, not only is the extended range
battery not a standard item, I don’t think anyone outside of a few
YouTubers actually got their batteries in 2017. It should be noted that
Carvon have a second EVO V4 Dual model called the ‘XL’, which has the
same range, a lower top speed of 35mph, but a much higher hill climbing
capacity of 25%, which rivals many of the other boards on this list. It
comes at a cost of $100 more than the standard EVO V4 Dual at $2099 USD.
The ‘XL’ was not included in this comparison as to my knowledge no (or
very few) units made it into the hands of the public in 2017. I even
debated on whether or not to include the regular EVO (known as the
R-Spec), as there’s barely any units in public hands, but they are out
there. The listed top speed of the Evolve boards is taken from the known
achievable top speed on 97mm wheels, the most popular wheel choice for
Evolve riders and the standard wheel size on the GTX. As the Bamboo GT
and Carbon GT come with 83mm wheels as standard, the RRP has been
adjusted to include a set of ABEC11 97mm Flywheels as priced on the Evolve USA website
(109.99 USD) in both circumstances. The Mellow Board lists a range
bracket between 7.5 and 10 miles on their website. For the sake of
simplicity I chose 8.5 miles as somewhere in the middle. Like Evolve,
the top speed spec of the Metroboards is based on the 97mm wheel option
in both circumstances. Both Metroboards in this comparison have been
tricked out — 97mm wheels for both, 10 watt lights for both and the
single drive has the biggest battery available included in the
comparison. Metroboard hill climbing specs are estimates as they’re not
included on the Metroboard website. The single drive is known to rival
Boosted’s and Evolve’s (25%), so by virtue of that knowledge the dual
drive must exceed this (30% or more).
*Please see further notes about Mellow Board pricing in the ‘Pricing’ section of this article.
Ranking System Used
In each category (top speed, range, hills and RRP) each board is given a number from lowest to highest based on a best-to-worst order: 1 being the best/cheapest then ascending in score until we get to the worst/most expensive.
The board with the lowest scores are the best in each category and overall (avg).
Top Speed
The Carvon EVO V4 Dual
is the king of speed in 2017. There’s then quite a drop down to the
Enertion Raptor 2 in second place, which is still significantly faster
than the next bunch of boards — the Evolve line-up, which all punch out
the same top speed. The Mellow Board is hovering around the middle
followed closely by the two Metroboards, which each punch out the same
top speed. Down the bottom of the list we have the Boosted Board Gen2
Dual+ and the Inboard M1.
From
where I’m sitting I’d expect anything with a score of 3 to 5 to all be
very similar in real life. It’s really splitting hairs. From that
bracket it is a significant step up to the Raptor 2 and then an even
bigger step up again to the EVO (maybe too much?)
The Boosted Board and Inboard M1 are significantly over-rated in the speed department.
Range
There are five distinct categories here: We have the Metroboard single
that’s in a class of its own! Then we have the Evolve GTX and Carbon
GT, which essentially share the same battery. Next we have the
upper-middle class of range: The Carvon EVO, Enertion Raptor 2 and
Metroboard Dual. The Evolve Bamboo GT stands alone as a mid-range board
and our list ends with the low-range, swappable battery category of
boards. An optimist might consider the final category to be even better
than the ones above it, as swappable batteries can in reality mean
“endless range”. The problem being, of course, that more batteries
equals more $$$…
Hill Climbing
I’d
say we’re looking at four distinct categories of hill climbing here.
The first category is reserved for certified incline killers! The Enertion Raptor 2 and Metroboard Dual!
Then we have a range of aggressive hill climbers ranging from the
Evolve line-up, Boosted Board and Metroboard single. The Mellow stands
alone as a moderate hill climber, and our list ends with a couple of
boards that shy away from inclines, the Carvon EVO and Inboard M1.
It
should be noted that with the optional 38T drive gear and hard
duro/small wheels, the Evolve GT/GTX line-up are also capable of
climbing hills on par with (even better than?) the Metroboard Stealth
Dual and Enertion Raptor 2. Video here. However, the 38T drive gear is not standard.
Price
Note: The Mellow Board pricing was taken straight from mellowboards.com and converted from EUR to USD. After publication I was made aware of mellowboardusa.com,
where adjusted pricing can be found direct from the US distributor. The
difference being that shipping a drive unit from Europe would have a
considerable shipping fee attached to it. It’s clear this cost (and
other sundry costs) has been incorporated into the US distributor price
of $1,995. Please make your own adjustments and determinations regarding
this as you read the rest of the article.
In the Sub-$1500 category we have the Inboard M1 and
Evolve Bamboo GT. In the $1500-$1800 category we have the Metroboard
single, Mellow Board, Evolve GTX, Boosted Board and Enertion Raptor 2.
In the $1800 and above category we have the Metroboard Dual, Carvon EVO
and Evolve Carbon GT (man, carbon fiber is expensive!)
And The Winner Is…
The
equal winners of this little test couldn’t be more different! According
to just raw specs vs. price, the best electric skateboard of 2017 is a
tie between the Evolve Bamboo GT and the Metroboard 41" Slim Stealth Edition (single)!
On
paper the Evolve Bamboo GT represents well-rounded specs at a
reasonable price. In addition, Evolve also have that tempting 2-in-1
conversion capability, allowing you to fit pneumatic all-terrain tyres
to your board making it an entirely different beast!
If
you can forgo the need for pneumatic all-terrain tyres, I believe the
Metroboard single to be a far better option. Top speed between the two
is splitting hairs, they both climb the same grade hills, but the
Metroboard has insane range! Spend approx $200 more to get the
Metroboard single over the Bamboo GT and you instantly upgrade from a 19
mile range board to a 40 mile range board! Again, that’s insane!
The
next issue to tackle is one of aesthetics vs. quality. The Evolve looks
better, there’s no denying it. It has nice flex, dual kingpin trucks
(if that’s your thing) and is just an all-round slimmer and sexier
design. The Metroboard is not as slim and stealth as its namesake. It
rides high and stiff compared to an Evolve. When it comes to the
argument of quality, however, the opposite is true. Evolve’s quality and
reliability has been called into question time and time again, whereas
Metroboard’s are known as bullet proof tanks! Then there’s the question
of batteries. Paper specs tell us the Bamboo GT has a 19 mile range, but
due to the low quality cells Evolve use in their battery packs, Evolve
boards generally suffer from the worst battery sag in the industry. I
think it would be fair to say that the Bamboo GT actually gets about 14
miles of enjoyable/manageable range, which now really tilts the scales
in favor of the Metroboard single.
My Thoughts on the Results
If you had to call a winner out of the two tied boards, it would have to be the Metroboard 41" Slim Stealth Edition (single). For speed, range and hill climbing vs. dollar + quality and reliability, it just can’t be beat!
Of
course, however, there will be people who don’t need 40 miles worth of
range and would much prefer to have the option for pneumatic all-terrain
tyres, save $200 and get the Bamboo GT. There will also be people who
just plain don’t like the look/feel of something like the Metroboard.
One
of the most interesting results for me was the gap between the Evolve
GTX and Carbon GT. These are essentially the exact same board — they
have the same top speed, range and hill climbing capability. The
difference is purely cost. That carbon fiber deck must cost a pretty
penny! The GTX comes in at $1728.99, whereas the Carbon GT comes in at
$2069.98 (which also includes a set of ABEC11 97mm Flywheels, otherwise
the board wont reach the quoted top speed — matching the GTX). That’s an
insane cost difference for exactly the same performance between the two
boards. I personally view the GTX as the preferable choice here. It’s
not only cheaper, but it’s more flexy and more modular, as the deck and
enclosure are separate pieces, allowing for more modifications down the
road (on the Carbon GT the deck and the enclosure are one complete
unit). On the other hand, the Carbon GT is longer (40 inches compared to
the GTX’s 38), lighter (17lbs compared to the GTX’s 19.4 lbs) and
obviously has a far more rigid and stiff feel to it. Some people prefer
the latter points.
I
guess we also can’t ignore the fact that these paper-based results sees
the Boosted Board languishing in last place. The board scores extremely
poorly in the speed and range departments. The KO then comes from the
high price tag that’s applied to what is now considered a fairly
mediocre spec sheet. But (and it’s a big but) SPECS AREN’T EVERYTHING…
Boosted
remains the smoothest and most comfortable electric skateboard I’ve
ever ridden! A tremendous amount of care and attention to detail is put
into their product. Their remote and mobile app are still best in class
and their QC and customer service also, arguably, remains unmatched.
Yes, there are far better performing electric skateboards you can get
for your money, but very few do the “off board” stuff as well as
Boosted, very few have such a well-rounded, well-finished, polished and
respected product that “just works” as Boosted do. That’s what you pay for.
What
these results say in the end is that user experience counts for far
more than specs ever will. The problem is that user experience is a very
hard thing to measure, particularly form an independent, third party
perspective.
Or is it?…
The Peoples Choice
This
brings us back full circle to Jay Boston’s Electric Skateboard Awards
and the overall winner as voted by 1,387 people — the Enertion Raptor 2!
The
Raptor 2 comes forth in a straight-up specs showdown, but it’s arguable
that the Evolve GT Bamboo is only above it due to its price point. In
addition, I’d be surprised if there were any more than five Metroboards
in the whole of Australia! Add to that Evolve’s known reliability and
durability woes and it’s easy to see why the Enertion Raptor 2 came out
on top!
The
Enertion Raptor 2 is faster than the Evolve suite of boards, is
comparable in range to the GTX and Carbon GT (once you account for the
Evolve sag factor) and is an equal or better hill climber in stock
configuration. It sits around the same price point as an Evolve GTX,
which is also obviously significantly cheaper than a Carbon GT.
If
you’re after a performance board packing the latest in motor, battery
and VESC/FOCBOX technology that has great specs across the board at a
highly competitive price, in my mind, the people got it right!
The Best Electric Skateboard of 2017?
In
the end that’s completely up to you to decide. It’s completely
subjective. What’s best for one might not be what’s best for another.
If
the best electric skateboard for 2017 to you is simply the fastest
electric skateboard, then the best electric skateboard of 2017 is the
Carvon EVO V4 Dual.
If
the best electric skateboard for 2017 to you is simply the electric
skateboard with the most range, then the best electric skateboard of
2017 is the Metroboard 41" Slim Stealth Edition (single).
If
the best electric skateboard for 2017 to you is simply the electric
skateboard with the best hill climbing capabilities, then the best
electric skateboard of 2017 is the Enertion Raptor 2 or Metroboard 41"
Stealth Dual.
If
the best electric skateboard for 2017 to you is simply the most
reliable/durable electric skateboard, then the best electric skateboard
of 2017 is the Boosted Board Gen2 Dual+ or maybe one of the Metroboards.
If
the best electric skateboard for 2017 to you is simply the most
versatile electric skateboard, then the best electric skateboard of 2017
is an Evolve GT/GTX.
I
honestly do think the people got it right in selecting the Enertion
Raptor 2 as the best all round electric skateboard of 2017, but I also
think an honorable mention needs to go to the Metroboard 41" Slim
Stealth Edition (single) from a pure specs for dollar + quality
point-of-view.
It truly is an exciting time to be into electric skateboards!
Hardik Gandhi is Master of Computer science,blogger,developer,SEO provider,Motivator and writes a Gujarati and Programming books and Advicer of career and all type of guidance.