Wednesday, 15 May 2013

Spock Presentation and Demo

Today I gave a presentation and demo at Masabi about Spock testing framework. I was inspired by Rob Fletcher to create this presentation but I changed his original vending machine demo with a much more simple one.

The code is available on GitHub: https://github.com/bsudy/SpockDemo

Sunday, 5 May 2013

Integration testing ReactiveMongo

During the development of Moresby Stroll I had to solve the testing of our data access layer. Moresby Stroll Server uses Akka Actors as a base of its architecture, therefore the data access layer is implemented by an Actor, the DataAccessActor.

DataAccessActor is responsible to provide all the persistence functionality what the business logic and higher layers require. Let's take a look at the DataAccessActor.

Monday, 29 April 2013

Weekly bean - 26/04/2013

Sorry for no having written the usual blog posts for months. We have met every Friday morning, just I was lazy to write about them. So..
...on last Friday - as usual - we met at Canary Wharf in a Café to talk about the IT world, news, experience, technologies.

Weekly news
  • Google Street View Hungary - finally :)
Topics
  • Lean startup - Eric Ries@Google
    • Mechanizm
    • Pros and cons
    • Movements in Hungary
  • Project Stroll
    • API changes
    • Roadmap
      • Places
      • Persisted users
      • Discovery
      • Other features will be decided after the main functionalities are built.
  • JavaDoc
    • Why do we need documentation?
    • What should be written there?
  • Interview
    • Process
    • Questions
Next bean

The next Moresby Coffee Weekly Bean will take place somewhere in London on 3th of May at 7am.

Proposed topics:

Saturday, 30 March 2013

Devoxx 2013 London

On Tuesday and Wednesday I have been on Devoxx 2013. It was a really good conference - many thanks to the organizers - and I'm writing this post to summarize what sessions I attended to and what I experienced there.

Saturday, 2 February 2013

Weekly flashcard - Lamport's Backery Algorithm

  • What is this algorithm for?
  • How does it work?

Download: OpenDocument, PDF

Weekly bean - 01/02/2013

On Friday - as usual - we met at Canary Wharf in a Café to talk about the IT world, news, experience, technologies. This was the last meeting at this place because it's become a bit boring. So next week we will re-base ourself to another fascinating location of London.

Weekly news
Weekly flashcard

Every now and again a small topic must be elaborated what can be put on a flashcard and easy to learn.

  • Lamport's bakery algorithm (post)
Topics
  • Android Calabash - Balazs Balasz
    • how it works - feature file and step definitions
    • working code example - overview and demostration
    • architecture review
    • why is it good/better than Robotium alone
    • how am I planning to use it at Hailo?
  • SVN - Git merge experiences - Barnabas Sudy
Next bean

The next Moresby Coffee Weekly Bean will take place somewhere in London on 8th of February at 7am.

Proposed topics:
  • Code conventions
  • Weekly quotation - 3rd chapter from Code Complete

Saturday, 26 January 2013

Weekly bean - 25/01/2013

On Friday - as usual - we met at Canary Wharf in a Café to talk about the IT world, news, experience, technologies. I know, I know, we should be more creative about Cafes: we're visiting the same Starbucks too often... but who wants to explore when it's freezing outside. :)

Weekly news

  • Apple Financial Report
  • Google Financial Report
    • interesting that despite the huge effort to push Google Play it is still almost invisible in the revenue stream
  • Apple vs. Samsung
  • iOS vs. Android
    • Is Samsung afraid of Google closing the Android ecosystem? Is Motorola going to be a real threat with rumors about the secret X-Phone and more frequent hints from Google
    • Will Samsung fork Android? Will it go with Tizen? How about the other manufacturers?
  • Nexus 4 - Marketing hack?
    • We have a theory about the reason why Nexus 4 is basically unavailable. Google's goal with the aggressive pricing is to make Android phones cheaper in general. However, it doesn't want to scare manufacturers - because let's be frank, the Nexus 4 is stealing marker share primarily from other Android manufacturers rather than Apple or Microsoft. So it deliberately keeps the availability of the phone low not allowing it to be a huge success and allowing the partners to react. In a few months, when newer phones comes to the marker Nexus 4 won't be that desirable anymore so they can "solve" the availability problem - it won't affect sales that much.
    • Balazs: However, there are certainly some appealing things in the reasoning above I really-really don't believe in conspiracies. Any plan that involves more than 5 people to stay silent it is doomed to fail. Also don't underestimate how slowly things can work in big companies - even if that company is Google. I suppose we'll never know the truth - I'm just glad I've got my Nexus 4 in time. ;)

Weekly topic

  • Test Driven Development
    • TDD and SOLID priciples
      • What is the level where the Single Responsibly should be applied.
      • Single Responsibility in Java and modern (Scala & Groovy) languages
    • Levels of different types of testing - unit, integration, functional, etc.
      • where are the boundaries of the different levels?
    • What are unit tests for?
      1. Testing methods (or functions) removing the private modifier and spy the object.
        • The SRP is on method/function level
        • The design will be nice even in the class
        • Very simple tests driving the developer to write shiny classes
        • No real support for refactoring checking
        • Easy test maintenance because there are only a very few test involved.
        • Difficult Pairing
        • etc....
      2. Testing only on Interface/Class level
        • SRP on class/interface/interface method level
        • The in-class design is not necessarily nice
        • Real refactoring support, after refactor the test must be still valid.
        • Difficult to maintain - lots of dependencies
        • The test are sometimes very complex because of the dependencies
        • Good Pairing
  • Community activity
    • Balazs will start writing Android blog posts :)
      • Balazs: I'm doing so many interesting things nowadays with Android that I'd like to share some of the stuff with everyone. Also it will serve as a reminder for me. :)
    • More meetups etc.
    • Monthly Google Hangouts
      • Hungarian - English (?)
      • Three part
        1. News - free
        2. Gadgets - free
        3. Topic - voted before the Hangout

Next bean

The next bean will take place on 1st February at Canary Wharf.
New session - Weekly flashcard
Every (second(?)) week a small topic must be elaborated what can be put on a flashcard and easy to learn.
  • Lamport's bakery algorithm
New session - Weekly quotation
Every (second(?)) week we will talk about a sentence/paragraph/page/etc. from a book. The quotation must relate to the IT world.
  • Waiting for proposal
Topics
  • Code conventions
  • Modern languages - Scala, Groovy
  • Test frameworks
    • ???
    • ScalaTest
  • SVN - Git merge experiences

Sunday, 13 January 2013

Weekly bean - 10/01/2013

On Friday - as usual - we met at Canary Wharf in a Cafe to talk about the IT world, news, experience, technologies. This was the first event of the year and we didn't talk about any heavy theme because our digestion system was still busy with the leftover Beigli.

Weekly news

  • CES
    • 4K everywhere - Where is the 3D?
    • Ubuntu Mobile

Weekly topic

  • Assessment
    • What we did in last year
    • Plans for the future
      • More blog posts
      • More community activity
      • Starting monthly Google Hangouts
  • NFC
    • How could will the NFC change the world?
    • How could will we be part of it?
    • Using NFC in everyday life

Next bean

The next bean will take place on 25th January at Canary Wharf.

Weekly bean - 14/12/2012

On Friday - as usual - the regular Moresby Coffee Weekly Bean took place at Canary Wharf. Where we were talking about the IT world, news, experience, technologies.

Weekly news

Weekly gadget

Weekly topic

  • Neo4J demo
    • Node and relationship creation
    • Query matching
    • Graphical representations
  • TDD in pratice
    • What to do with certain types of codes
    • Features of Mockito
      • Mocking
      • Stubing
      • Spying
  • Testing on Android

Next bean

The next bean will take place on 11th January at Canary Wharf. Marry Christmas everybody