• Playing with IBM Quantum Computer

    Playing with IBM Quantum Computer

    What does a programmer do when he has enough free time on his hands? He tries to do something with a quantum computer. :D

    IBM will let you try and do something with their quantum computer for free. Five qubits and all! :D There is a fair bit of documentation on their site on how one should go about thinking of quantum computer programming and it involves a lot of advanced math. It gets a bit difficult to follow at times, so I guess this is where all these college math courses paid off. :D

    So, after you go through the beginners guide, you can start playing with the composer. After running a few examples from the guide and another few I found on other blogs on the internet, I realized I’m not sure what to do with all this at this stage. You can spend your computing credits quite fast and easily so it feels a bit limiting and slow to do anything. But that’s ok, it wouldn’t be right for someone to usurp the thing for too long. You also realize quite quickly that today’s quantum computers aren’t really that powerful yet. Instead it feels more like a really interesting proof of concept. So anyway, it was really cool to be able to even do that and the fact that this is actually publicly accessible to anyone is beyond awesome. Guess I’ll pay attention to what happens with this in the future. :)

    In the mean time check how this guy made the rock/paper/scissors on the platform!

  • Passed the C# 70-483 exam (MCP)

    Passed the C# 70-483 exam (MCP)

    Today, after a few weeks of preparation I passed the C# 70-483 exam and became a Microsoft Certified Professional. Woohoo! :)

    Besides getting a cert, was it worth it? I would say in case of this particular exam – yes. I was already familiar with many topics covered by the exam but it did fill some gaps in my C# knowledge. And I enjoyed learning the new bits. It also did feel like I had to learn some details by hard at some points, which was less enjoyable.

    What did I use to prepare myself? I used the official practice exams from measureup, the 70-483 ref book, the Wrox Certification Toolkit book for this exam, in a few cases the official documentation and of course – StackOverflow. I feel the practice exam was very beneficial, the official ref book was also helpful but in my opinion very badly written. It’s as if the book has no structure and as if the authors didn’t communicate between themselves so that would make sense and so you could learn in some kind of logical order. Instead, the book jumps between topics in an unexpected way. The Wrox book was ok. I didn’t go through it in full detail, but read a few bits and pieces where I felt I wanted to get more details which I haven’t been satisfied with by the ref book. Both books seem to be riddled with various mistakes in code.

    Overall, I’m very happy I studied for this exam and that I passed. If you’re considering doing it – do it, you’ll be happy to learn new things and it isn’t really that hard but be prepared to put some time in it. Good luck! :)

  • Contributing back – InfluxData.Net NuGet

    Contributing back – InfluxData.Net NuGet

    On project that I currently work on in Dovetail, we’re using the InfluxDb time-series database. And it’s a really cool thing to be working with.

    Recently we had to move to a newer version of InfluxDb and the library that we were using at the time became a bit stale and didn’t support the newest version of InfluxDb (v0.9.6) which we had to move to. So, partially out of necessity, and partially “because I can” and wan to, I decided to update the currently existing library and then re-release it as a NuGet package under a slightly different name.

    *drumroll* – the code for the InfluxData.Net NuGet is available on Github. It already had a few code contributions which is quite exciting. The whole codebase has been refactored, additional tests written and I believe that the codebase is now quite stable. I plan on expanding the library API to support most of the stuff that InfluxDb provides, and I also plan on implementing the API’s for other InfluxData products such as Kapacitor and Telegraf.

    If people keep using it in the future, I’ll consider it a success and it will make me happy. :)

  • Global day of code retreat – Dublin, 2015

    Global day of code retreat – Dublin, 2015

    Yesterday I went to a very fine event organized by folks from Intercom here in Dublin. It was the global day of code retreat which is organized in many cities around the world. Initially I got interested because the topic of this years code retreat was Conway’s Game of Life which I had my eye on for some time now but the whole event turned out to be a really pleasant experience.

    The idea is very simple:

    • try to solve a simple problem – Game of Life in this case
    • do it with a partner for 45 minutes
    • add some kind of restrictions to make it more interesting and consider different approaches
    • you don’t really need to implement the whole thing
    • reflect on the session and wipe your code at the end of each one

    We ended up doing 5 or 6 sessions, each with a different person. What’s interesting is that the whole event wasn’t really about the Game of Life but the Test Driven Development approach. Usually one person would write unit tests, and the other one would work on the implementation of Game of Life rules. The restrictions that were placed on us were: use only primitive types, use only objects, do not talk to your partner (apparently everyone’s favourite)… It ended up being funny that my “silent session” partner didn’t really think it through nicely so he wrote his first unit test in such a way that I basically had to make the whole thing work before the first test passed. He realized it and later on added tests with smaller increments. :)

    What I really liked about the coding sessions was pair programming. This was my first real exposure to it and I loved it, I think it’s a great approach to coding. I felt like my concentration was boosted and that I was somehow more motivated because I was coding with someone else on the same thing at the same time. It also felt a bit more safe/secure because both people get to complement each others ideas and code. In general is timply felt more productive than programming on your own.

    It seems that everyone ended up doing all their stuff in Javascript because it turned out to be the most common language between the participants. I believe we all used tryjasmine which makes it really easy to write both the implementation and unit tests (in Jasmine JS testing framework) in browser with literally zero configuration. That’s quite handy for an event such as this.

    We got treated very well – organizers fed us, shoved coffee down our systems and even invited us for pints in a nearby pub afterwards. I got to meet some new, interesting people which was nice. Considering all of this, I was a bit surprised that only 7-8 people actually showed up for the event although it was a stay-late-in-bed kind of Saturday.. But whatever!

    I enjoyed it. Would come again. :D

    Thanks organizers!

  • KatKiss >> Cyanogenmod (Asus TF300T)

    KatKiss >> Cyanogenmod (Asus TF300T)

    Ever since my little TF300T rooting/flashing adventure I have had nothing but trouble with Cyanogenmod on my TF300T. I flashed 3 new versions throughout 3 months, but none of them were stable or fast enough. I have been a long time Cyanogenmod user and I like it a lot so that was my obvious choice. But the tablet would often become very, very slow, couldn’t connect to Wi-Fi or wouldn’t even be able to run certain apps. There are also other issues people reported and it seemed that things wouldn’t change in future.. I guess the device is simply not popular enough to have enough people care about and it maintain it’s CM version. Lately I started thinking I would either have to flash an older version of Android (perhaps even Asus stock crap) or retire the device to a dark corner of a drawer..

    Hopefully, I remembered seeing everyone giving praise to the KatKiss ROM so I decided to give it one last try and try KatKiss out. Man was this a pleasant surprise. The device is now bursting with speed! It’s really responsive, I haven’t noticed any bugs so far, it looks nice and I have the latest Android 5.1 features. It’s even faster than what it was with the old 4.x stock Android, it can now run anything (including Hearthstone! :D). I’m really happy as this means I will now be able to use the device with joy again.

    If you’re looking for a fresh rom for your TF300T – avoid CM and give KatKiss a try, it will save you time.

    Mad props to timduru! :)

  • Codealike bug squashing

    Codealike bug squashing

    I stumbled upon codealike a bit more than a month ago and decided to give it a try. I was interested in programming language usage percentages and coding vs. debugging vs. building statistics as well as some additional stuff that they track. After a while I even decided to get a premium for a month to see what the differences are and whether it would be worth for me personally to pay the fee.

    Today I discovered a potential bug in their system that I thought could probably lose them some money so I submitted a bug ticket. In 10 minutes, I got a response from their team. After that, we exchanged a few emails – they were happy that I notified them and in the end they even awarded me with one year of VIP subscription. Which is even better as it means I can now use their staging environment to experience the latest features they’re working on. That was quite cool of them and I guess it pays off to be a good guy. :)

Back to top