Latest news about Bitcoin and all cryptocurrencies. Your daily crypto news habit.
Weâre going to hear from Ian Jennings, the brainchild behind PubNubâs ChatEngine and many, many other cool products. ChatEngine is an open and extensible chat SDK and APIs for building powerful 1:1 and group chat quickly. Weâre going to discuss that and some of his past work, such as selling a company he started at Rutgers to Intel and controlling a swarm of drones in real-time.
David: What makes a good hacker?
Ian Jennings: To me, hacking is about a focus on outcome. I want this done, and Iâm gonna find the easiest way to do it. Itâs a disregard for standards and a celebration of cutting corners. Hacking is the punk rock of computer engineering.
The cool part about focusing on the results is it turns the implementation into its own game of trying to reduce effort. What library can I pull in? Thatâs expensive, can I do this myself for free? Can I just bust open my coffee machine and hook it up to the internet?
Engineering is very regimented. I mean, we run linting programs so that all everyoneâs coding style conforms to appear exactly the same.
Hacking is the absolute opposite of that. Itâs total freedom. Itâs commonly done alone. Nobody can tell a hacker that âthey canât do that.â Itâs like, Iâm gonna get this done, and Iâm gonna do it my way.
To me, a great hacker is someone who has a goal, creates their own solution, and inspires others to do the same.
Why did you/PubNub make ChatEngine?
PubNub is a realtime data stream network and doesnât hold an opinion to what kind of system you want to build. PubNub can power real time notifications, multiplayer games, internet controlled sprinkler systems, and even fleet management and ridesharing use cases. However, more than half our customers use PubNub for chat.
So we set out to build a special product that sits on top of PubNub and makes it even easier to build chat into your application. As weâve already been providing chat infrastructure for years, we know all about the kinds of problems you run into when building a chat app.
ChatEngine comes with 1-on-1 chats, group chats, private chats, typing indicators, emojii, and markdown support built in. It even includes the ability to create your own plugins to work with whatever service you can imagine. Itâs Javascript so it works on the front end, back end, and mobile. With react, react-native, Angular, jQuery, anything. You can even make your own bots with NodeJS!
At PubNub we believe that the future is real-time. Personally I believe that anywhere you would have had a âforumâ or âcommentsâ section will be a chat in the future.
Could you share some numbers about how people are using ChatEngine? What KPIs define growth/success for ChatEngine?
Weâve been overwhelmed with support for ChatEngine. We have hundreds of signups and feedback is coming at us from every angle. People are really interested in the functionality and weâre getting asked to support every platform you can think of.
Adoption is a big role for us, but personally Iâm interested in solving problems people have. I want you to be able to go from not knowing what ChatEngine is to having production ready chat in your app within an hour; and when you want feature xyz, I want that ready for you too. The best statistic we have to measure this is probably support tickets.
How much data does PubNub process per day / month / year? And how do you approach the problem of processing data faster?
PubNub does 2 trillion monthly transactions per month on 330 million unique monthly devices. PubNub processes 5x the data that Twitter does, and that continues to grow.
Itâs very difficult stuff and I hold huge respect for our core engineering team. Things that never cross your mind when youâre building a simple web app are insanely complex at this scale. Iâm a client developer, so when I end up communicating with the core team I find myself starting by saying ânow I know this is different because it happens 66 billion times per day, butâŠâ
In terms of speed, we guarantee message delivery under ÂŒ second latency. Weâve done a ton of work to get that speed down and itâs very hard to decrease it further. Real world distance starts to become the bottleneck.
To mitigate this, we maintain data centers all over the world and optimize connections based on distance. This way, if youâre in Europe communicating with other Europeans, you donât need to wait for your packet to travel over the ocean to North America and back.
In a video about ChatEngine, Typing Indicators is the first feature mentioned. Why are the use of Typing Indicators so important to driving the growth of ChatEngine?
Typing indicators represent high resolution real time communication. Not only do you get a message, but now youâre getting updates in-between the messages.
Itâs the addition of a meta conversation that starts to get really interesting.
It also demonstrates ChatEngineâs ability to be extended. Itâs not just chat, but itâs chat and all the other fun stuff that goes with it; like gifs, markdown, image uploads, etc.
Plus our customers ask us how to do it all the time.
Which plugins have been the most with ChatEngine? How do you see this ecosystem maturing?
It seems like people go right for the markdown and typing indicator plugins. Weâre getting a lot of requests for all sorts of plugins and Iâm excited to continue building them.
When someone asks if ChatEngine can do something special, we can tell them âyes, hereâs how you do that in a plugin.â
Since anybody can write a plugin and publish it, Iâm hoping we see all sorts of developers participating. I want ChatEngine to be the jQuery of chat. I want a newbie who barely knows Javascript to be able to combine ChatEngine and a bunch of plugins into a full featured chat app.
Plugins have already proven to be totally awesome for development. They are completely modular, isolated, and testable on their own. The codebase would be an absolute mess without this pattern of feature isolation.
Weâre Hacker Noon and you started Hacker League. Your definition of âhackingâ above was great. You ended up selling Hacker League to Intel in 2013. How did that sale happen? How did it change the direction of your career?
Mike Swift, Abe Stanway and I build Hacker League during the rise of the student hackathon movement, and the end of our college undergrad. We had thousands of students and hundreds of hackathons on the program, but we didnât really have a plan on where to go from there or how to monetize the app.
After graduation we all got full time jobs and kept working on it nights and weekends. Swift eventually hooked up with the team at Mashery, who was interested in purchasing the application.
Swift is still in the same space today, with a new company called MLH.
Whatâs the best thing youâve built? Or, how do you look back on the things youâve built?
Community is the common thread in my work.
I started getting involved in the web by running a Photoshop forum in which users shared tips and tricks with each other. In college I started the Rutgers subreddit and then Hacker League, a student hackathon website. My three biggest passion projects were all community focused. So thatâs where I hang out.
PubNub is about connecting machines, and therefor people. Itâs a great place for me to continue my community obsession. After all, any piece of software I write with PubNub is going to involve multiple people communicating.
Thatâs why Iâm stoked about ChatEngine. Not only are we developing it open on GitHub, but it also supports an extensible plugin system that allows anybody to participate. They can add new integrations and functionalities into the SDK, without actually editing the SDK. Weâve laid an amazing groundwork for community around the product and weâre starting to see developers participate. Itâs really exciting.
Your @sw1tch bio reads, âLast of the freelance hackers.â Do you have any thoughts on the future of high speed pizza delivery? Snow CrashâââI havenât read itâââwant to now.
Yes, âLast of the freelance hackersâ is a direct reference to Snow Crash.
However, it means a lot more to me. At first it reads like a job title, but if you think about it, Hiro (the protagonist) is actually defining his morals. âI will maintain my commitment to free thought, independence, and exploration even if Iâm the last person who thinks this way.â Thatâs freaking badass.
Iâve thought more about pizza delivery than your average hacker. I worked delivering pizza all through college and daydreamed of a system that would push the order address into my TomTom so I didnât have to type it manually.
Now, pizza delivery is the new âgo toâ example of solving a logistics problem. In fact, PubNub has even created a real time pizza delivery system demo.
Your recent Control-A-Swarm-of-Drones-in-Realtime-from-Anywhere Tutorial has some real Black Mirror powers⊠That bee episodeâŠ. Scary stuff. Do you have an army of flying drones right now?
Technology is not inherently good or evil. Black Mirror is a fantastic commentary on the evil side of technology, but it is not our only future.
When I worked on the PubNub drone, the internet was having a conversation about âtaco copters,â drones that would deliver tacos to your doorstep. Well, when you engineer a taco copter, you also engineer a drone that can deliver an explosive. You canât separate the two.
Should we give up a future where tacos rain from the sky because the same technology can be used for evil? I donât think so.
What we should focus on are ways to stop people from using technology for evil. If youâre interested in reading more about this issue in regards to autonomous killing machines, check out Stop Killer Robots.
PubNub, our weekly sponsor, provides realtime APIs and global messaging infrastructure for building interactive apps of the future.Sign up and get coding.
Building a Chat App, and The Difficulties of Pizza Delivery was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.
Disclaimer
The views and opinions expressed in this article are solely those of the authors and do not reflect the views of Bitcoin Insider. Every investment and trading move involves risk - this is especially true for cryptocurrencies given their volatility. We strongly advise our readers to conduct their own research when making a decision.