Continuous Learner #21

Visual Studio

Visual Studio 2012.3 download: http://bit.ly/15ZYaiA
ASP.NET and Web Tools for Visual Studio 2013 Preview Refresh Update: http://bit.ly/13mxlsP
Visual Studio 2013 download: http://bit.ly/15ZY7Do
Microsoft Adds Bootstrap Support To Visual Studio 2013: http://tcrn.ch/13mwRD3

Web Development

Knockout IntelliSense Highlighting Bug Fix: http://bit.ly/11iUZ9p
Browser Link feature in Visual Studio Preview 2013: http://bit.ly/19VCCI2
Understanding OWIN Forms authentication in MVC 5: http://bit.ly/19VCDM1

The London MySQL Meetup Group

Pre Holiday meet up – Hosted by Just Eat: http://bit.ly/15ZYOMZ

 

JustEat – Hackathon V

At Just Eat we run regular Hackathons, the last one was last week, and yesterday we spent the afternoon showing what every team was working on.

WP_20130614_001

The theme was about “Empower consumers to love their takeaway experience” and there were some amazing projects, some are listed below:

  • Adding comments to individual order items by Sylvia / Greg
    Empowering consumers to be able to add comments to individual order items
  • A dashboard for use as a restaurant sales tool by Peter Mounce, Tony Harverson, Josue Calvo, Rob Lascelles
    Supply and Demand dashboard by area based on search terms on JustEat.com and  restaurants in the area
  • Ratings via sms by Pawel Matyjasek Anton Jefcoate Maxim Lakomkin Jaimal ChohanMake it easier for customers to rate their food so that other customers have more information available to them.

Me and my team (image Ahmed Malik and Sergey Balaboskin image) worked on a Chat system to allow Customer Service agents to chat with the restaurants when there’s a problem about an order.

The solution we came up with, is a Chat Server that read and writes messages to and from an inbound and outbound queue. A worker process on the CS App will read and write the messages from/to the same queues and push the messages in front of the Agent using SignalR. The Chat server is responsible for storing all the messages using an API, both the Chat server and CS App will read the historic messages from the API.

The Chat server could potentially be integrated to the client system the restaurant use to receive orders from Just Eat, so it’s something they would be constantly looking at.

Chat System

We uses AWS SQS as message queue and SignalR as WebSockets wrapper.
It was amazingly simple to set everything up, it took us a couple of days to get this up and running.

From a business point of view this will allow CS agents to talk to multiple restaurants at the same time, where before they had to make phone calls and could only talk to one restaurant every 5 minutes or so.

And remember:

 

What does Agile mean after all?

As you might already know, I work for JustEat, we are a start-up, a very big one, but still a start-up, I work on the Technology Department, I’m a team leader (I try to do my best at being one) and we have many many open positions.

Recently we had a few good developers coming in for an interview, and they all seem quite surprised that we do not adhere to any specific agile methodology.

We do not do SCRUM, we do not do KANBAN, we do not do regular stand-up.
We believe we are better than that. We are Agile to the extreme.

We use a mix of those methodologies, we use HipChat  and public rooms for all our conversations so that everyone can just jump into another team room, ask question or just keep an eye on what people are doing, we use JIRA to keep our workflow public within our company, everyone can go and have a look at each team board, and see what they are working on and what it’s coming up next in their list. imageimage

We also have a weekly report  that goes out every week to everyone and explain what the Tech department has been working on.

We love technology, we live with technology and use a lot of different technologies, we use a Microsoft stack (MVC/.NET/C#/SQL Server) on Amazon AWS, we use Java and DynamoDB for our Search Engine and Hadoop processing, we use Ruby for test and automation, we use Powershell for some throw away scripting, we use Coffeescript/CouchDB for our EPOS system, we use a ton of open source frameworks.

But, (there is always a but) we are also very business oriented, we do not use all those different technologies just because we like them, we do so because we believe that it’s always better to use the right tool for the job.

If you want to know more about our iper agile way of working, do not hesitate to reply to this post.

 

Continuous Learner #20

Testing

Test Better – http://bit.ly/10OgfmP
Phil Haack last week posted about testing, and the way it’s part of each modern developer’s life to write unit testing, and to help QA the software we are writing.

The way I see it, he’s completely right, I’m demanding more attention to unit and functional testing from me and the members of my team. It’s good to have dedicated QA resources that help a team of developers to keep high the attention toward quality, that help to coordinate the testing of new functionality being released by all the members of a team.

I like to get dedicated QA members involved early on in the process of analyzing new features, help figure out the weakness of the business requirements, and ultimately *help* developers test their code.

Tools

TeamCity plugin for Visual Studio – http://bit.ly/10Ohz9c
This is a tool that has existed for a long time and yesterday Maarten Balliauw blogged about it in the JetBrains blog.

It’s a super useful tool you can use to run build and automation testing on a Team city server rather than your local machine without having to commit to a source control first. neat!

 

Why I think YouView will fail

 

With tablets at £150, why anyone in their right mind would spend £250 to have a PVR that record something that can then be watched only on the TV, when you can stream/download(well done BBC) most of the (pre recorded on the cloud BBC iPlayer, ITV Player, 4oD and Demand 5) stuff anyway via streaming?

Sport is not on YouView, so this makes it a replacement for the £20 FreView tuner. If you want sport, you still need Sky or Virgin, so YouView is just another box you need to add to your TV.

“At the launch of YouView, chairman Lord Sugar‘s ambition for the service was to replace Freeview Devices.”

Most of the new TVs already have a digital receiver incorporated, so FreeView devices are already becoming obsolete, TVs are getting smarter and smarter too: with less than the cost of YouView, you can buy a Smart Tv with FreeView built in (http://amzn.to/T1Eda0), and with a bit more one with WiFi too (http://amzn.to/T1EUQG).

If YouView is to succeed, it needs to cost less than £100 and even at that price point, I would say it’s too much.

Telecommunications Operators and Broadcasters companies should focus on content, services and advertising, making everything available on the internet via APIs, so that they can still control “who” is watching “what” and monetize that, but should leave the “how” to hardware maker(xbox, playstation, apple tv) and the “where” and “when” to consumers.

YouView is trying to solve an old problem in an old way, trying to control too many things, and in my opinion, will fail.

With Google(http://bit.ly/T1F8aw), Microsoft (http://bit.ly/T1F4aI), Amazon (http://bit.ly/T1F9eJ), Hulu and Netflix (http://bit.ly/T1Fgab) starting to produce their own TV content, it’s quite clear that the TV market will be the next one to be hugely changed in the next 5 years. The future is 100% on the internet. PVRs are dead, FreeView is dead, cable TV is dead.

Sorry Lord Sugar.

Windows 8 – Reset Your PC using Chocolatey

I don’t want to do too much copy and paste, go and read this blog post from Maarten Balliauw

this is how I can reinstall most of the software I use with a couple of command line commands

Go to http://www.myget.org,

  • setup your feed
  • add http://chocolatey.org/api/v2/ to the package sources
  • feeds
  • add all the packages you want to install.
  • packages

Install chocolatey on your machine:

@powershell -NoProfile -ExecutionPolicy unrestricted -Command “iex ((new-object net.webclient).DownloadString(‘https://chocolatey.org/install.ps1′))” && SET PATH=%PATH%;%systemdrive%\chocolatey\bin

and install all the packages from the feed you just created:
cinst All -source http://www.myget.org/F/smnbsswin8