Skip to main content

Posts

Micro-services: Learning resources.

I am currently working with/researching about micro-services  software architecture (or approach to software architecture). There are tons of resources on the web but unfortunately very few of them are academic in nature. I hope that over the next coming months software/academic community will agree to have a standard definition (perhaps following a simple format similar to this one ) for this topic as this subject is starting to get hot . I personally think the name/term "micro-services" can be a bit misleading. Quite a lot of people I have talked to focus more on the word "micro" and not on the principles. I am all for light weight approaches to building software though. For the time being this term is trending and I don't see the term fading away time soon. See the buzz on twitter and youtube your self. I hope to make this post as a learning resource for people new to micro-services. I will be curating this over a period of time (so don't expect t...

Raspberry PI and TL-WN725N from hell

In the last few days I have spent a considerable amount of time trying to configure a seemingly simple Wifi dongle with Raspberry-pi. Being an ex- Gentoo user I thought how hard could it be to get some modules and load them, or so I thought. First step was to install raspberry pi (I used this software to flash the image using my mac; bit dangerous with asking password for the system, but I am too lazy to look up on how to do this with console :)). I chose the rasbian distro, although arch looks more interesting. Then of course you need to do an rpi-update, apt-get update  to make sure you have the latest stuff The module that I have does not get picked up by the kernel and I spent a lot of time downloading all kinds of module ( .ko ) files from the internet to get this dam wifi thing to work. It was a terribly long list of misses.  Long story short I found this link to help me get the wifi dongle  to work. Then I used  wicd-curses to configure the networ...

As native as possible

This is a half baked idea and kind of a rant. The idea is very simple and has to do with my personal position position about how to choose technologies. When building a software systems, first do things as natively as possible for your context. As a software developer I would like to construct systems that are easy to get started with, understand, maintain and still can be delivered on time. As you may know that it is impossibly hard to do so many things well in any domain. In my brief career I have seen many examples of technology stacks and systems which try to achieve the previously stated goals by abstracting away complexities of underlying layers but also creating some of their own. If you are a Java server side developer you probably have worked with likes of Hibernate etc (which helps you create database queries). This usually results in poor results and has been discussed in community  (to quote "the resulting cakes  from cake mixes generally taste worse tha...

BLE Hello World in Cordova/Phonegap

After learning about bluetooth smart, I have been wanting to write some phonegap/cordova apps for my self. There are few plugins ( 1 , 2 , 3 ) available on github but in my opinion the most promising one is from EvoThings called cordova-ble . I decided to write my self a sample app for scanning on a weekend and ended up modifying one of the examples from EvoThings and mixing in topcoat and zepto as per phonegap expert recommendations . Code is here . The code is dead simple, so I won't bother to explain it, but essentially it is just HTML5/CSS3/JS stitched together with the evothings plugin. Video made with the help of   Reflector ,  Android SCR  and Apple iMovie

A List of links for Bluetooth Low Energy beginners

I had the pleasure of sharing my recent learnings about Bluetooth Low Energy in a Internet of Things meetup in Stockholm. It was inspired by a similar meetup held in San Fransisco back in October. I would like to share some learning resources for people who attended the meetup and this is what this post is about. I would try to make this list grow over time. Edit: I am dumping more links here from Droidcon Stockholm Videos First the basics. I think the best place to start and get excited is from youtube videos  There are lots of videos from Bluetooth Tech channel, from home automation, security etc.  If you want to go more in depth you can watch Robin Heydon from CSR do a really nice intro to BLE. This intro is similar to other webinars that are available out there. You should watch the whole series to get a basic idea This following video presents BLE from a Linux perspective. I think it introduces too much detail without context, but can be worth watchi...

Neo4j Graphgists: The most educational gists in my opnion

I am really glad that interest in Neo4j education is picking up and NeoTechnolgoy is taking a fun approaches to help people learn graph databases. These efforts tie in neatly with my suggestions regarding Neo4j community outreach. Back in 2012 we had the Neo4j heroku challenge . At that time Cypher was just coming out and the aim of heroku challenge was to get people comfortable with code/cloud and Neo4j. In the last year or so Cypher has evolved considerably and now it is a great initiative by the Neo4j-community-team to hold a challenge that focused on Cypher and graph modelling. In this post I would like to go through my personal favourite gists from this challenge. I have a " fair " understanding of modelling with graphs; yet I learn some thing new and interesting, almost every time, when I am looking at other people's graph models (and that was my personal motivation when I began reviewing the gists ). I am not sure how the voting for this challenge will be d...

At it again

This is like the fifth time in the last 10 years that I have started a new blog. I am still trying to find a balance between what to post/share with the world and what to keep it to my self. My last blog was titled "No more rants" and today I have forcefully retired it.  Why (you may ask?). My initial goal of that blog was to only focus on technical content and not say too much about other stuff (like politics, my travel adventures, life in northern Europe). But now I have changed my mind about it because I missed writing. I think writing helps you become a better person, since one(usually) takes time to reflect on the topic. It is another thing altogether that with blogs you open your self up to the world and that can have some consequences (mostly some thing you wrote a while back can come to bite you back, example in my case was bashing of a company for no reason other than fashion, and of course bad writing that just make you look un-intelligent.  I think I w...