Posts

Showing posts from September, 2016

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 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 complained about the size of the bite, she said "c'mon, its just a bit, not big enough to be a byte"…

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 any lan…

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.;)

So.
Always subscribe to email updates on the playstore. Has fun added benefits :D
I've tried out the dev console app. It's great, but I don't want to keep a minute to minute check on my app, so it really isn't for me.

I should really blog about LifeHacks soon. I've worked tremendously hard on it and its growing really …

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 settings windows f…

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 to ext…

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/to/keystore/locat…

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 person you rec…

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. So I thought it'…