Posts

Showing posts from 2016

AR is the Future

Image
The HoloLens arrived at our office this week, and I've spent about 5 minutes everyday, amusing myself at what the future is going to be like. The possibilities are truly endless - start by watching the video. You know how a lot of companies exaggerate their product in their demo video, and it ends up being nothing as fancy as what you saw? The HoloLens is exactly what they've shown! The projections you see really do look like they're there! In a very simple demo application, you can choose from a set of holograms, resize them and place them anywhere you like. Honestly, anywhere you see space. I placed a hip-hopper guy on my table, a miniature Nasa rocket on the entrance to our floor, and the Globe in the center of the room. And everything looks extremely real! You can move around the holograms, go as close as a centimeter to them, and they all look like a part of your world! This is the future - but it's scary. To the people who aren't a part of the HoloLens

Where Have I Been?

It has been a month since I've posted anything here! Every now and then when I think it is high time I write about something, I remember the enourmous amount of documentation I have to go through. There is lots that has happened in the past month or so, and I wish I had taken out time to blog about each one of them. My marvellous 4 years (now I know that it's actually 3, really - you generally intern at a company in your last semester, and the semester before that you spend looking and worrying about where you'll be put up in the last semester). College was extraordinary. Now that I've started interning, I realise why everyone says they are the best years of their life. Its much harder to meet like minded people - the equally clueless sorts you met when your first joined university. Once you're out of that town full of people like you, it isn't easy to meet people who are willing to share their clueless-ness. (Trust me, everyone is - no one has any idea what

The Thought Train

Thoughts. I woke up in a strange trance like state this morning. There are questions to which I finally had answers to - a simple theory, an explanation to a particular thought that I have been trying to articulate for the past several months. It was all so clear, every thought, every word that my mind spoke made perfect sense. Like magnets each thought clicked in perfect harmony, leading me from one sentence to the next. I haven't had such a flash of clarity in months, though this lasted for probably under a minute. And just as my conscious brain kicked in, it all seemed to go away. I forgot the keywords of every sentence that led me from one to the next. Much like hearing the sound of an engine take off, seeing a train leaving the station as soon as you arrive at the platform, this train of thoughts fled just as I was about to make sense of it. I am still unable to work back how the dots connected, and am not certain how long it'd take me to be able to pen down what I

Signing PDFs is a looong process!

tldr; Signing pdfs is a looong process - it takes me 15 minutes every time I do so! You open your email and see a pdf that needs to be signed and sent back. Until 2005 or so, when phones were not smart, and they didn't know the Internet existed, it'd be a huge hassle to digitally sign these pdfs. (Or so I've been told - I was just 10 around that time.) People then would first print, sign, scan and then finally send the signed pdf. I suppose that'd take around 30 minutes. It takes me 10-15 minutes now and I'm not really glad about it. Here's what I do. I've kept a saved copy of my signature on my laptop saved as a .png (I'm certain that's not the smartest thing to do). I open that on GIMP. If the pdf requires the date to be written I do this - take a blank piece of paper, write the date, take of picture of that, send it to my computer via gmail (not very proud of using gmail for this.) Then, I download the pdf, open each page that requ

I have 100,000 installs!

Image
Jan 2016 Me : So I spent the whole weekend working on this app - it was a whole lot of fun, though I barely slept. I found this amazing website with brilliant content and thought it'd be cool to make an app out of it. Friend : Its great, but do you reckon anyone would use it? Oct 2016 Me : Over ONE HUNDRED THOUSAND   people have used it, and about 60% use it regularly! :D Friend : Whaaaat! How? LifeHacks on Google Play . Here are the numbers behind the scenes. A collation of statistics and insights you may find interesting. Total Installs (number of unique users the app has been installed by) Interesting note: The first 1,000 installs took 3 months (Mar'16); The first 5,000 installs took 5 months (May'16); The first 10,000 installs took 6.5 months (Jul'16); and now I get around >3,000 installs a day. Exponential growth! Currently Active Installs (i.e., number of users with the app still installed) It's about 60% retention rate, whic

Instant Gratification Monkey GO AWAY!

Image
Procrastination has reached a whole new level! I remember writing a blogpost about Hacktoberfest (I never ended publishing it) on the 1st of October, about how this month is going to be a super productive month. It's the 17th today, and it feels like I wrote that post just yesterday. But wait, it also feels like it has been an eternity of me doing absolutely nothing since I wrote it. Except wait, I finally finished reading The Catcher in the Rye, saw every episode of Minute Physics, discovered a lot of new music, and many random articles on HN. Back to the beginning of October. I had it all sorted - I penned down goals alright, I made plans - I have a nice little 10x5cm diary I write my tasks in (I used to use Keep, but I feel writing down what you want helps much more). It was all going to be perfect. I was glad I knew exactly what I'd do. But here's why things didn't work out. List of things to do: Task Deadline Priority Willingness Boring assignment tha

Everyone Can Develop. But can they do this?

tl dr; Hello world kickstarters are easy, and they're shit. Everyone can do HTML. But can they really? Everyone can develop. Take any tool, any technology and the simplicity of the hello world program will have you thinking you're a champ developer off to make the next Whatsapp/(fine, Allo if you think it's that good). It's then a major leap to going from the hello world program to developing something truly on your own. Give yourself a pat on the back for publishing a website, or releasing an app on the AppStore/Playstore - you've done what most hello-worlders couldn't. But you're still a long way away to mastering the tool. Here's what truly makes you a good developer. Initiate a project on their own, taking an idea, and ponder over its necessity/usability/awesomeness. Then design the concept on paper, thinking through the interface and experience. Remember, paper is important . Translating what's on your mind to paper is extremely challen

Interviews, Interviews

tl dr; This article on Hackernews. Its a Sunday morning and you're out shopping. You're buying milk and cereal when you happen to meet this person. You start talking to him and well, he's no different from the average Indian engineer. (To be honest, it really doesn't matter if you're from an IIT or a local college in Assam. All Indian engineers are the same. Blog on that later.) You start talking about life in the city and your respective universities and how long it's been since you left college already. Oh, he's just another one like you. But then, he tells you he works at Google, and suddenly, you have this new-found respect for him. Till now, he was just another guy. But now? You've given him a near superhuman status because he was hired by Google . Buuut wait. Should you be?  Google hired him, yes. But. Did they hire him well ? Was he really what they were looking for, or was he just another one of those people that could solve puzzle

Mission-Super-Impossible | Buying a Laptop

Image
tldr; Buying a laptop, level of difficulty : so-very-hard-near-impossible-super-legendary-level-hard . You're making an investment that'll stay with your for years. You're buying something you're going to see, use, spend time on everyday. You've got to make the right decision. It should be perfect. You find the right specifications at the right cost, but then its just so ugly. You find a beautiful laptop, but then its specifications are barely good enough for browsing the net and running MS Excel. You finally find the right specifications, the beautiful keyboard you've been looking for with the perfect trackpad, and bam, it costs twice as much as what the ugly-but-right-specifications laptop costs. Oh and of course, then there's the high end MacBook Pro, that's priced at everything I own, combined. The cheaper MacBooks aren't worth buying. Looks                     +         -       +      - Specifications        +       +       -    

The Best Online Community

Image
devRant Probably the best online community I've come across, and a really nice social network. I've been viewing its posts over the last 6 months or so, and the quality of the content remains as good as when it first started, if not better. Its pretty much 9gag for devs - unlike users from SO and Reddit, the people here are light hearted, post meaningful, hilarious rants from their adventures in programming. Here are a few :D A good laugh :D (Though, I would've preferred Sublime over Notepad++ :p) A couple more funny posts - - Exception up = new Exception("Something went really wrong"); throw up; // hehehe - Boss : Nice job with that bug, when the erp feezes and magically starts working after a few seconds. My code : try {                      // something something                  } catch(Exception e) {                      sudo reboot;                  } - My girlfriend got bitten by a mosquito and kept scratching it. After I compla

Allo kthxbye?

Google Allo. Just a chat app? Sorry, but lol. Yes, okay, its extremely pretty and looks so bubbly and cute. Plus it has those nice little cat stickers. I love all that. But. It's much, much more than that. Sundar Pichai was supremely confident with Google's ability to process language during his keynote in I/O '16. Allo is Google's playground, and humans their subjects. Allo is their path to testing and building a 100% literate machine that can communicate in perfect everyday-human-like language - and it becomes more like you the more you use it. Like IBM's Watson, Google will have a system that knows what to say under different circumstances, understand emotion, and interact differently with different people. It will be able to not only take part in everyday conversation with everyday humans like you and I, but even debate with top notch speakers, artfully reply to political leaders, logically argue with mathematicians, and so much more. And all this, in

Email Subscriptions Can Be Useful | Playstore

Image
tl;dr . Subscribe to updates over email on the play store. LifeHacks has been doing really well on the play store recently. It gets about 2-10 written reviews each day, which are quite fun to read. Over the past couple of weeks, I developed a habit of opening the developer console every morning right after I woke up, to read and reply to the meaningful reviews. So, I fiddled around with the console and found out you could subscribe to updates via email. Its great because for one, you get immediate push notifications. The real benefit is the persistence of emails. The dev console doesn't show deleted reviews, but emails sent can't be unsent. ;) I had a good reply ready in my mind for this guy. The place I've hosted these images is blazingly fast and can take a whole lot of load. His Internet was probably messed up at the he tried the app, and immediately jumped to the play store to write this review. (Though I wonder how that didn't give him connectivity issues.

Manjaro KDE No. Mint Yes.

tl;dr. Manjaro KDE - it's super cute, but maybe not for me. My laptop has been a wretched mess for the past couple of weeks. The reason was silly - the OS disk partition that I initially gave 30GB to was out of space, and there was no way I could extend it, even though I had over 200GB free in my other partitions. It required an empty space right after the OS partition - no fragments. :/ So, after about 2 weeks of cribbing and waiting for a new laptop to magically appear at my door, I succumbed to it. I couraged to format my disk and re-install my OS. I had been using Linux Mint 17.x Cinnamon for about 2 years now, and thought it'd be nice to go for a change. Manjaro KDE, based on ArchLinux. People on the internet seemed to love it. Plus it was Arch. It seemed perfect. Except. Now that I have it, I dislike it. It's too Windows-y. It's just very cute. Everything looks so beautiful! I know, I know, I love good design, and all the nice little icons and setting

Is All of Webdev Just A Pile of Hacks?

tl; dr : This post on hackernews. I had written a (not so structured) blogpost on how web dev is insanely different from app dev, comparing UI design, backend code, and flow of the app/webapp. And how webdev is just hacky. I've seen so many profiles on LinkedIn/personal websites where people proudly designate themselves as ardent lovers of JS . No offence, but huh, lol . You can be really good at JS, but it's just very hard to fall in love with, unlike languages like Java and Python. Now I don't entirely dislike JS - I understand why it is the way it is, and the history of the Internet and yada yada. But all frameworks, all libraries built using JS felt like attempts at revival of something that should have long died. Every new framework gives JS lovers (honestly no offence) a little bit of hope and adds a year or two to its survival. JS is a hack on top of a series of hacks! They have fake classes and now  pretend inheritance in React (I used refactored a lot of code

Firebase Auth | The Debug vs Release Signature Problem

tl;dr 1. Update Firebase console with SHA1 of your release keystore. 2. Re-download google-config.json file. 3. Place your release keystore in the same folder as your gradle file and update gradle with the code below. 4. Tadaa! Authenticating a user can be frustratingly tricky at times. I use Firebase all the time to do all server related tasks - I used to create my own Python Flask server prior to this. You literally have to write no server side code, and it's all for free. All steps at the Firebase Auth documentation are straightforward, except for the part that requires you to add the google-config.json with correctly configured SHA1 key. I got stuck at this one point, and I'm certain most developers will at the same place. It took me hours to do this the right way. Here's what you do : Firebase Auth requires SHA1 fingerprint of your release keystore. Run the keytool command given in the docs. keytool -exportcert -list -v -alias alias_name -keystore path

Emails can definitely be better

I've found a place I'd quite like to work for. Superhuman . They're a group of 10ish top class developers/creative minds - several Indian, based in San Francisco. They're working on a very simple, every day problem - emails. At first, I know the idea doesn't groundbreaking, and a whole lot of companies have worked on something of this sort. Plus ideas like these usually get eaten up by bigger companies with more resources. But these super creative people with contacts all over bay area, and infinite cash flow, immersing themselves into working on a long term project can make it groundbreaking. Here's what they're doing. Simple words, changing the way email is today. Making it beautiful. Emails clients are supposed to be clean and sleek. GMail is ugly, both on Android and the web. Material Design isn't always the ideal design pattern for all types of applications. iOS' design pattern for an email client is quite nice.  Insights about the pers

Android Dependencies and Version Numbers

If you've done any development, you probably know how quickly libraries upgrade versions. Keeping track of the version number to compile the library with is always difficult. On Android, a lot of developers use dynamic dependencies using the '+' notation like so - compile  ' com . android . support :cardview - v7 : 24+ ' This is terrible! Dynamic dependencies may end up doing unexpected things to your app and you won't know why. You may be saving time and always have the latest version while compiling, but this laziness may cost you a lot of time when you don't understand why your code isn't working. Read more here  ( A really, really nicely formatted blog, ftr. Blog goals - make blog look this pretty. ) Alright. I used to go to Android's dev website to check versions every time I'd want to use a support library. They keep updating very frequently. The other place for all other open source libraries is either github repo or Maven central

Indiegogo | Onion Omega2

Image
Omega2 by Onion . A super small WiFi enabled Linux server. It's a computer that costs $5. You can power it with LiPo batteries (:D), it has WiFi built in, and is made by a group of super enthusiastic people. It's everything your electronic hardware design course taught you about Arduino and Raspi, except it's one third the size and one fifth the price. For those interested :D And it's my first contribution to an Indiegogo campaign. $5   :)  Downside, it'll ship some time in December '16. What am I planning to use this for? I'm probably going to do something with the Omega2 and this nanoquad. The WiFi on board of both the quad and the Omega2 makes things easier. :D (Okay, the quadcopter's website sucks. Don't judge it on that. Their nanoquads are just like the Crazyflie's, except 5 times cheaper. I'm going to write a blogpost on the Pluto quad as soon as it arrives!)

15 Million Merits

Image
Black Mirror . A British TV series based on futuristic worlds depicting the problems of today, especially ones to do with technology. Each episode has a different story line, with different actors in different worlds. The name is perfectly fitting - when a screen is off, it looks like a black mirror. Every episode is a morbid reality of our society, a dark reflection of what the screen, technology has done to us, how we see ourselves as a society. Charlie Brooker, the creator of the series says this (couldn't help but smile at this) - The irony is, how we're all watching the series on our laptop, television, or mobile phone, and at the end of each episode when the screen cuts to black, we see our own reflection on that dark screen, the black mirror. Forward to 4:31 seconds, if it doesn't on its own. Each episode is a perfect allegory. I saw 15 million merits recently, and couldn't help but notice all the hidden metaphors to reality - frankly, they're hidden

Can you solve this?

You have a sheet with several numbers written on them. You have to fill in operators to make the left side balance the right side. You can use   any operator, and as many as you'd like. You can use brackets. You cannot write any number on the sheet. So, square root works because there's a symbol for square root. Cube root doesn't because it requires you to write 'three' in the root symbol. Similarly, you can't square a number, because it requires you to write 'two' in the superscript. You also cannot use decimal as it requires you to write '0' in front of the dot. Here's the question -  0 0 0 = 6 1 1 1 = 6 2 2 2 = 6 3 3 3 = 6 4 4 4 = 6 5 5 5 = 6 6 6 6 = 6 7 7 7 = 6 8 8 8 = 6 9 9 9 = 6 I'll give you the answer to the first.  6 + 6 - 6 = 6 Can you solve the rest? -- It took me almost half an hour to complete.

The Population Problem

Brief, unstructured, but have always wanted to put this through. Many questions and not  critically thought ideas. The root of most human induced problems is large population. I feel any race/city/organization/institution that limits it size to as much as it can handle will function better than those that grow uncontrollably. Now this sounds obvious, but surely other than the Chinese no one seems to be following this. The obvious issues - Day to day troubles - Road traffic. Queues in supermarkets. Local transport, metro, buses, trains always crowded. Education - Can the government provide education to  everyone ? What is the selection of students? Creates division and hierarchy amongst institutions - not everyone gets to study at a top tier institute. On what basis is an individual considered worthy of a top level education? Employment - Where do you generate so many jobs? Even if you push in more people into each domain, say increase the size of police force as the overall

The Zoo of Jobs

The more I think about it, the more I feel I've made a big mistake. Or maybe I haven't. Imagine this . You're on an indefinite term in jail. No, jail's too harsh. Let's call this a zoo . You're one of those many human-animals that are captured, and kept in protection in the zoo. You've been captivated for months now, and have hated every minute of the feeling. You're wise, you're strong, but like every other human-animal, you live in this zoo, waiting for the day you'll be free. Every day you dream of what this day would have been like had you been free - from the city you would choose to live in to the people you'd like to do meet and do business with, the food you'd eat and the place you'd like to call home. If only you were free right this very day . Every week or so, the zoo has visitors- people from the industry, factory owners who tour the zoo and observe the animals inside. These visitors spend hours trying to find a right f

StackExchange is too Pedantic

Image
A couple of my posts have been about how people are awesome. This post? This is about how I just don't understand a couple of things here and there. No intention to hurt the people involved in the image. Online communities are amazing. Stackoverflow, stackexchange in particular (not mentioning Reddit here). It is quite a feat to have created a tool that has created such a vast community  ( Jeff Atwood  - the creator of SO - read his blog if you haven't, extremely fun to read!) that follow the rules, attempts to fix those that don't abide by them and continues to grow. It's almost like a world of its own - most people are like the average citizen - they answer questions of things they are good at and cause no trouble. A small percent are the troublemakers - illogical people with little sense who post wrong questions/downvote wrongly or are just plain  wrong . There are policemen who make sure rules are enforced - they verify and edit questions, write appropriate comme

People are awesome | Ode to Joy

Image
Imagine walking down the road on one of your many monotonous days, to find something so spectacular, something so joyful that just being there for 5 minutes makes you feel like every moment of your otherwise common day is now going to be like no other. :D It is not uncommon to see single violinists/trumpet players on the road playing solo music in Europe, but to see a whole orchestra perform, wearing ordinary everyday clothes, with the biggest smiles on their faces, spreading smiles to everyone watching, is simply precious. Beethoven's Ninth symphony. :') There are several people that stand out in the video. The girl on the lamp post at 3:33, it's such an ingrained human reaction to move your hands to the rhythm of the music. The ordinary dressed Choirmaster at 4:06 who is anything but ordinary. The (probably Italian) guy at 4:09. His priceless reaction is what the flashmob plays for. You can see the happiness on his face. :D I really wish to be a part of sev

Habijabi | Can you solve this, Sherlock?

Warning. If you like puzzles, this w ill take up a lot of your time. I've been (trying to do)/doing algorithmic programming on Hackerrank and other similar websites for the past couple of months. (Practising competitive coding is the only way to get a soft engineer job, apparently.) Some problems are really fun, while others are now standard algorithms that took humanity 10s of years to figure out - you can't expect yourself to come up with solutions to all of them without sitting through the theory. I was trying out 'interview practice questions' on Hackerrank, when I found this. This question is one of a kind, I haven't come across anything like it before, and certain you haven't either. It took me 10 minutes and a slight peek at the discussions tab to convince myself this question is legit. A guy mockingly posted "IMHO, the problem is a hacker challenge - it's not a reasonable "practice interview problem" unless you are interviewing

People are Awesome | Pokemon Go

We all know the latest buzz. The world has been going crazy over Pokemon Go, starting their adventure as a trainer, merging the gap between _real_ life and the virtual world. There are hundreds of blogs about how Go has impacted the world, how it is forcing people out of their homes and to actually explore their city and meet new people, making the world a more social place. (Personally, I still don't believe this. Go reminds me of the people from Wall E . Everyone's under the influence of _The Screen_. But let's leave this for another blog :) ) Go & Open Source Developers This is why people are awesome. In less than a month since Go's release, there are dozens of Github repos creating unofficial APIs and tools to help you locate Pokemon, find the closest poke stops and gyms. My roommate has been going out everyday in hunt for Pokemon since he got hired last week. Last night, while discussing stories of his many adventures and how he met so many people p

How did you live without listening to these?

It's funny how only once you find a really good song you realize how much you needed it. Before that, you never really knew about it, and life was still fine. But now that you've heard it? - You can't live without it. I was very fortunate to find these songs this summer. Each one has a good memory associated with them, and I'm really glad music of this sort exists. The Strumbellas Spirits - The music video & the live version . I got this song in my head and it won't go! The Strumbellas aren't a very famous band yet - they will be very, very soon though. All of their music is soft and meaningful. Bonus- they have an excellent violinist; that instrument can entirely change the mood of the song :D While listening to the live version of this song, you can genuinely feel the pain in his voice - the second half where the lyrics are - And I don't want a never ending life, I just want to be alive, while I'm here. There must be more to this, a deeper mea

Android Libraries & How Android Has Kept Me In Love

My love for Android is never ending. I've thought of putting a complete halt to all Android development over thrice in the last year*, and haven't been able to so far. One major reason is the sort of things Android allows people to come up with! The endless number of libraries, both for UI, or development. Here's a list of super useful libraries you may not have heard of. Android Annotations I stumbled upon Android Annotations about an hour ago, and I'm hooked. It's an Android library that helps in making code smaller and easier to read. True. Android is based on Java, and we all know how Java, unlike Python likes things big and explicitly written. Annotations are those '@' marks followed by a keyword you see above method or variables in several languages. ButterKnife uses them to inject views instead of writing long lines of the same code. Annotations are also used to mark methods like so - @Override. Android Annotations takes this to a whole new le