Figure: SSW sent the APA website live 28th July 2014
OK it was not a croquembouche, but it was a beautiful website designed and delivered in just 4 weeks. It was designed with enough pizzazz to support a national advertising campaign.
At SSW, we love a challenge. Clients give us a chance to flex our creative and problem-solving muscles, and think outside the box to create solutions. So when we took on the creation of the Australian Patisserie Academy’s website, we were thrilled with the opportunity to race against the clock to make something great, while meeting the extremely strict requirements of:
a 4 week deadline
a site that was both sexy and scalable
powered by a user friendly CMS
Combining some of our best technologies, including Sitefinity, practices, and teams, we were able to achieve all of the requirements, and the clients were delighted with the result.
If the site looks familiar, maybe you saw it on TV – the site was featured on several programs, including. Better Home and Gardens (Channel 9), and Lyndey Milan’s program on the Lifestyle Food Channel (Foxtel).
The 3 pillars of this project were:
Our developers were excited to build another website on the Telerik Sitefinity platform. Each version gets better and better. We were able to complete it in such a short time frame because of our past experience building with Sitefinity. It is remarkable how much time can be saved when you get really good at a platform, something many developers don’t get a chance to do because they are always building software from scratch.
Figure: Everything on the site looks delicious. A fair bit of work went into the images and it really drives the ambiance of the site
Many projects can be stunted by a Product Owner who is too busy to communicate with the developers or properly test the completed features in a timely manner. Caroline Carey was a model Product Owner for this undertaking. Caroline is one of the reasons the project was completed in such a short time frame. The project was successful because:
Daily Scrums – Caroline attended the majority of the daily scrums with the developers
Continuous testing – Caroline tested each completed feature during development. Such quick feedback meant the developers were able to pivot and drop or add functionality
They became a team – Caroline was in contact with the developers many times throughout the day. By the end of the project the SSW developers and Caroline worked together like the great Wallaby back line.
The SSW Design team was the key to the success of this website. Most people know SSW as a bunch of very technical .NET developers, but we also have a softer side. The design team are experts at three things:
User experience – When designing for Sitefinity, SharePoint or web applications, the user experience is significant. Enabling a user to get to the information they require with the least amount of clicks, is often more important than a great design. So they walk the tightrope balancing design against usability.
Awesome Design – SSW designers are challenged with creating unique designs for strong brands. They are constantly working within brand guidelines, while building a unique corporate website
Working with developers and .NET – Developers and designers are made from different molds. Developers are very logical and designers are more dynamic. Getting them to work together is often very difficult. The biggest challenge is getting designers to think like developers and learn the limitations of CMSs and the .NET framework, to create designs that not only look great but are cost effective to implement.
Figure: The tight deadline didn’t make us forget the details
Nothing great is easy. Let me call out the people who need thanking the most:
David Berkes, the man who kicked things off with a beautiful website design
Rebecca Liu, the designer who converted the Photoshop mockups into Sitefinity and did the front end development
Daniel Hyles, the lead developer behind the Sitefinity module development
Daragh Bannigan, for smashing the site with heavy load testing and sorting out the proxy setup
Caroline Carey, our lovable Product Owner from the APA, without whom this project would still be a distant dream
Another project that showed we love design as much as we love developing.
Last month, SSW held the first of many Xamarin HackDays. This one was at the Sydney office, and it was a great day. Xamarin is very important to all Microsoft developers as it allows us to write a C# app in Visual Studio and publish it to iOS, Android and Win phone8 in one fell swoop – woohoo!
Figure: Filip Ekburg getting the crowd excited about Xamarin
After a nice steak lunch across the road at The Oaks Hotel, everyone piled back into the room for the hands-on afternoon session. The crowd formed into teams of 6 and they started hacking away.
I was impressed with how quickly the teams got stuck into their projects and battled to get native mobile applications up and running. Of course it helped that they were armed with the great knowledge learned that morning and that there were Xamarin experts lurking around the room, ready to remove any road blocks the teams encountered.
Figure: our HackDay attendees hard at work
The goal was that by the end of the afternoon each team would be ready to present to the room what they had achieved, but with minutes to go before the presentation, there were still many heads buried in laptops and screens being shared.
At 4pm each team used their 10 minutes to show hot tips that they had learned and what they had achieved. One of the most impressive projects presented was from self-diagnosed professional geek, Nick Hodge (Microsoft).
Using Xamarin Studio he created a new open source .NET library based on another open-source library from Microsoft, ported it to iOS, published to nuget (https://github.com/NickHodge/BoxKite.Twitter/), and then created a quick app to test.
After the show and tell, there were triumphant smiles as team members across the room admired their list boxes scrolling fluently – success!
What I am really proud of is that everyone who attended our day, even the beginners who knew nothing about Xamarin walked away with Xamarin installed on their laptop and had built their first mobile app.
Special thanks to Michael Ridland, David Burela and Ben Cull for making it an awesome day. Thanks also to Filip Ekberg and Rod Howarth for great talks. Thank you to Rebecca Liu for a beautiful website and to Raj Dhatt (SSW TV) for streaming the event live. Finally to Joanna Feely for helping in the background to make sure the event ran super smoothly.
After such a successful event, I’m happy to announce that Xamarin HackDays are now coming to Brisbane, Melbourne, and more. Be sure to sign up for the next Xamarin HackDay near you:
Logos are more important than we realise – a logo is often your first impression of a company and as such having a good one will go a long way to being memorable and instilling a sense of trust and familiarity. Our designers should be commended. We followed the same logo design process we do with clients where we had a brief, we did sketches, several iterations and then a presentation to a small focus group.
Making changes to our much loved SSW logo has been a lengthy design consideration. SSW has been represented and branded by the popular ‘swoosh’ logo for nearly 20 years, but it was time for our logo to evolve alongside our growing company.
We could have started afresh, but we chose to keep the original company colors and the core feel. Therefore the swoosh was kept, as this has become the iconic symbol of SSW. We introduced a set of 4 small squares to the design, each in a varying shade of our corporate colors. The squares also highlight that we mainly work with the Microsoft stack.
I am proud to unveil the new SSW logo and believe this modern look will carry us further into the future.
In 2012 we launched a new SSW website with the influence of Windows 8 and Metro tiles. Our nearly 20 year old logo started to look dated.
Then we began a serious effort to reinvent our branding for this new age of digital media.
2014 New Logo
On the SSW new logo, you may just recognize several elements inspired from our original logo – the web, the globe and the “swoosh”, as Adam Cogan loves to call it. Our goal was to retain the elements that made our company recognizable, but freshen it up with a Metro touch.
We kept the “swoosh” but replaced the globe and the web with the four squares as homage to our proud Microsoft affiliation.
Of course we tightened the overall alignment and straightened the font – now using Helvetica Neue LT Pro 95.
We hope you like it!
Remember, the logo is a valuable corporate asset that must be used consistently in the proper, approved forms. We’ve also outlined some ways we don’t want our logo to be used. You can find these rules on our logo page.
The logo is more complicated than we have usually produced for clients, but at least it’s simpler than our previous one!
As you may remember from my last blog post, the 3 teams were having their solutions critiqued by a panel of judges with extensive experience in building software. Today, I am excited to announce which team our judges picked as being the most successful (giving the most business value). The voting was tight and I think it’s fair to say that all the judges were impressed with the level of output in just 9 weeks. Some of the judges were tougher than others. I’ve included some of their comments below (I haven’t included all the judges and all their votes below).
ScrumCommitments.com Part A – The Product Owner marketplace, developed by the Scrum Eagles - 3rd place
My vote: Scrum Eagles.
Everything’s happening at once: filtering, paging, favorites, AJAX, highlighting, tabs, etc. Sure, I expect there are a lot of higher level controls in play here, but that’s proven to be a good choice of investment. The end result is smooth, functional and fast.
Paul Glavich, Chief Technology Officer, Saasu.com, FireBootCamp Mentor (AngularJs):
The Scrum Eagles have my vote.
Nice search – lots of functionality wrapped in a nice, usable UI – very cool. Favorites is great, tabbed interface good. Overall solution is quite usable and well ordered – search is a standout though.
I really like the induction process, so I think that piece of software really worked. I didn’t like the fact that I had to register for the website to see it, but I like the workflow.
Troy Hunt, Software architect and MVP (Security), FireBootCamp Mentor (Security):
I really liked SugarLearning.com.
This is primarily from a usability perspective, I just found it easier to find info and immediately understand the context of what I was doing. (ScrumCommitments is also very good, but a little more cluttered.)
What I really like about both: 1. Lovely design, great responsive implementation 2. Maximum usability, it’s very easy to get to grips with what’s going on 3. Really good use of native ASP.NET constructs (membership, request validation, etc.)
As a security guy: 1. Would be great to see SSL on logins and for auth cookies (there are free certs from Start SSL) 2. Love the option for both local accounts and OAuth 3. Sugar Learning never set up their custom errors
Andrew Brust, Research Director for Big Data at Gigaom, ZDNet, Microsoft Regional Director:
My winning vote is for SugarLearning.com.
I thought the interface was clean and yet not spartan. The functionality looked really helpful, with a UI that made it easy to use. I also thought it was the best video of the three, by far. Maybe that’s irrelevant to this competition, but I think presentation is an important part of a product.
The site has a good flow, and feels uncluttered. The implementation of functional areas such as the gamification (leaderboard) work well, and don’t complicate the experience (rather they add to it). The basic processes are simple to follow, and it is intuitive to use.…the team executed the business goals the best, and as such would be the team I’d want to hire.
Scott Cate,CTO EventDay, Microsoft Regional Director, ASP.NET MVP:
Scrum Central’s SugarLearning was my winner.
This site felt a lot simpler than the other projects, but the team have done a good job of producing a polished experience - better UI, easy to navigate, and it just got it better.It was also great to see solid multi-tenancy support; something that is hard, but often the downfall of any identity approach. However it would be nice to see things like the ordering done via something more intuitive, like drag and drop instead.
Brian Harry, Owner of Team Foundation Server (TFS and VSO), Microsoft Technical Fellow and Product Unit Manager.
I liked the Scrum Stars solution best.
1) It seemed like a more involved app. I particularly liked the attention to detail/design. 2) The integration with other services – email, TFS (or VSO), etc was pretty impressive. 3) They solved some complex scenarios: creating projects, with nested sprints, and popup details, all in one screen.
Figure: selecting iterations underneath releases
Scott Hanselman, Principal Community Architect for Web Platform and Tools, Microsoft
First choice for me was the ScrumCommitments.com dev portal by the Scrum Stars.
Clean, fresh design. Great use of client side controls, tag text box, filtering. Impressive. Solved some complex scenarios, a solid foundation.
My vote is for the ScrumCommitments.com Developers Portal.
Although they lost some points on design compared with their competition, it was the most functional and immediately useful. ScrumCommitments.com had useful hooks into TFS. It outputs emails, it completed the scenario.
I really liked the Scrum Stars ScrumCommitments.com Developers Portal.
All three teams did a great job. What really stood out was the TFS integration that Scrum Stars managed to achieve. This was on top of a number of data management pages, the ability for the application to send out email reports, and even Google, Facebook and Twitter based authentication!
My vote: ScrumCommitments.com Developers Portal by the Scrum Stars.
Wow, you guys got a *lot* done. There were clearly a lot of features implemented. I particularly love the TFS integration! In your video, it was great to hear how you vastly improved with your burndowns and process as you progressed. I’d be confident as a Product Owner that you’ve learned from your mistakes and would be highly effective.
Telerik provided licenses of “The Telerik Platform Business Edition” valued at $1,788 to each member of the top two teams!
I’d like to say congratulations and goodbye, and mention a few things I’m proud of:
Everyone’s communication improved substantially. Much of it starts from little things: Mohammed couldn’t give me a proper handshake, now he nearly rips my hand off; Jai, who was always full of enthusiasm, initially gave me a lot of mumbo-jumbo instead of getting to the core of the answer straight away
Focus and preparation for each sprint improved every week and every sprint got better. We saw “Forming, storming, norming, and performing” in action with all teams hitting the “norming” stage by Sprint 8
Bootcampers, you didn’t just build a successful application, you built an enterprise-ready solution by successfully implementing the Onion Architecture, Dependency Injection, and many other best practices
Well done to all the teams, and thank you to all the judges. I know that wasn’t easy – but nothing great is.
It has been an amazing, intense 9 weeks, and while I’m sad that it is over, I couldn’t be more proud of the guys and what they’ve achieved. They’ve all improved in different ways:
Some of them arrived with a lot of experience… now they are awesome.
Some were juniors straight out of uni… they’re still juniors but now with great experience. They surely know the right way to do things. These guys could spot a smell if you wanted to architect a dodgy solution that was untestable.
Some are recently arrived from India with many years of experience but big gaps… they now leave with much improved communication skills, giving clear explanations in Sprint Reviews. They are now able to manage a Product Owner much better. They even shake the PO hand with confidence!
Everyone did Scrum well by the end, knowing and following the 8 Steps to Scrum. We know all the boot campers found at least the first 4 or 5 sprints very hard, but they stuck it out as the Product Owner turned up the heat, while always changing his requirements. The proof is in the pudding… test the apps yourself at www.scrumcommitments.com and sugarlearning.com.
“The roots of education are bitter, but the fruit is sweet.” Aristotle
Why we created FireBootCamp
We didn’t jump into running a boot camp like this lightly. There was a few problems that kept arising at SSW:
Corporate training – lots people were taking our training – we still do it for large corporates around the country and it costs them a lot of money. We love teaching the newest technologies and methods along with our best practices, but when we followed up with them later they were not using what we had taught them to its fullest – they would tell it was “still on the backlog”… basically they were seeing but not doing.
UTS lectures – A number of the SSW guys lecture at the University of Technology. We were seeing people going through a 10 week course but the theoretical knowledge gained was not transferring into results. They needed practical experience beyond simple exercises.
Work Experience – SSW often get juniors who are happy to work with us for 3 months or more for free, but when they are blocked we don’t really have a great reason to pull off one of our consultants (that is working for our clients) to help them out, so the work experience guy might stay stuck for days or weeks.
This is why we started FireBootCamp, to integrate the theory with the practice in an environment where experienced consultants could support the learners through the process by:
Doing the theory in the morning
Then practicing the real project in the afternoon
Learning Scrum and ALM along the way
All while making “Bob” (the Product Owner) happy
The course is not a panacea, and not everyone will graduate a guaranteed expert – but every attendee is definitely many steps above where they were before starting. Plus they are more confident and competent, with a solid skill-set that they can build on:
Know the right way to attack problems
Work with people very different from themselves
Worked in cross functional teams
All while providing incremental deliveries of real business value in every sprint to “Bob” (the Product Owner)
The teams and what we gave to them (aka The Specifications)
We arranged our boot campers into 3 teams and had each team working on a unique project. For this, we created 2 projects for our boot campers to complete: Scrum Commitments and Sugar Learning.
ScrumCommitments Specifications – for both Part A – Product Owners Marketplace and Part B – the Developers Portal
ScrumCommitments is a site designed to help both Scrum teams and Product Owners from the initial team-hunting stage all the way through to the completion of a project. To this end, the project was broken into 2 parts.
Part A was to create a searchable marketplace where companies could go to find Scrum teams that have a great history of successful sprints. The search results needed to be filterable so that the product owner can find a team that suits his or her needs. The searchable categories included rating, price, technologies, and industry specialisation.
The team working on Part A were the Scrum Eagles:
Part B of ScrumCommitments was to create a developers product portal the Scrum teams could use for sprint planning, spring review, and sprint retrospective meetings to record what was agreed and decided on. This would form the history that product owners find invaluable.
The team working on Part B called themselves the Scrum Stars, and consisted of:
The Specifications for Sugar Learning
Every company needs an induction for new employees and a learning management system to keep employees working in a consistent manner and keep the quality high. Sugar Learning does exactly this, and allows the employer to track their employees process.
The team behind Sugar Learning was Scrum Central:
What they delivered
ScrumCommitments – Part A – The Product Owner marketplace – developed by the Scrum Eagles
ScrumCommitments – Part B – The Developer’s Portal – developed by the Scrum Stars
Sugar Learning – developed by Scrum Central
What we covered in the first FireBootCamp
Each week we taught the campers new enterprise technologies to help them produce their product:
Week 1 – Scrum and MVC, plus Azure websites. Then working with TFS, Git and using visualstudio.com – Multiple times we setup Windows Azure and visualStudio.com – continuous deployment Week 2 – AngularJS, Authentication, Dependency Injection – We implemented authentication using OAuth. Intro to Dependency Injection Week 3 – Alternative Clients (WebAPI, Windows8, Windows Phone, IOS and Android Development) Week 4 – jQuery, Twitter Bootstrap, Unit Testing Week 5 – TypeScript, KendoUI Week 6 – SignalR, CSS, Mocking Weeks 7, 8 and 9 – SOLID, Enterprise Design Patterns: Repository + Unit of Work
SSW Sydney Awards
Dodgy Coder Award #1 – Even the strong get stronger
Andrew arrived at bootcamp as a strong coder. He could do some dependency injection…
Figure: The Bad. BINDING TO THE DB DIRECTLY – here the web project is tightly coupled to the data context (Entity Framework)… to be fair there is some some dependancy injection… but injecting a concrete class (from the web project which you can’t see)
Here is a later better check-in from Andrew:
Figure: The Good. Now Andrew is injecting his repository via the constructor (the interface describes the repository). So the Web Project is decoupled from the Data Access
Dodgy Coder Award #2 – Even the strong get stronger
Ludvik also arrived at bootcamp as a strong coder. However not that strong at using Kendo Grids, here is one of his early check-ins:
Figure: The Bad. Ludvik’s Kendo Grid has the binding is being done by a big nasty string. Guess what? Even if he can manage this mess, then working with a designer – they wont see HTML and they will screw things up
Here is a later checkin that is much better…
Figure: The good. Here Ludvik has refactored the code to use Razor syntax to define a function to return a string… this is much simpler as your now working with HTML – great for working with a designer
No news this month – we’ve been too busy preparing for the upcoming FireBootCamp gala morning, which is your chance to come and meet the FireBootCampers and see the great projects they created while training with us. The gala will be held at our Neutral Bay offices on Friday 21 March at 9am.
Check out some of the course highlights:
The SSW TV team have been with us every step of the way, capturing all the exciting moments of the course from inception to completion.
After 9 weeks of intense training, these “FireBootCampers” are the best candidates on the market. Come along, meet the guys, and put in an offer for the developer you want. Strike while the iron’s hot!
9am – 12pm AEDT, Friday March 21
Suite 13, 81-91 Military Rd, Neutral Bay Australia
9am – 12pm AEDT, Friday March 21 Suite 13, 81-91 Military Rd, Neutral Bay Australia
SSW invites you to come and meet our newest FireBootCamp graduates. These developers are so passionate about coding they took 9 weeks out of their life to do nothing but code, and they are keen to show off what they have learned and created.
This event gives employers the chance to see the web applications our Boot Campers have developed, speak to them in an informal setting, book appointments for interviews, and enjoy a scrumptious morning tea on us.
After 9 weeks of intense training, these “FireBootCampers” are the best candidates on the market. Come along, have a mimosa and put an offer in for the developer you want. Strike while the iron’s hot!
The boot camp is extremely hands-on. Under the guidance of an experienced mentor, the attendees work together in small teams to build and deploy a functioning enterprise ASP.NET MVC application. As well as technical skills, they learn best practices, problem solving and client management.
If you have any enquiries regarding the gala, FireBootCamp, or SSW, contact Joanna Feely via email at firstname.lastname@example.org or phone on (02) 9953 3000.
Week 2 of FireBootCamp was a whirlwind for the students as they held their first sprint review meetings. During the sprint review they had to present the completed product backlog items to the product owner ‘Bob’ (Adam Cogan, FireBootCamp mentor in disguise)
They were challenged to deliver completed and fully tested features to the product owner on a weekly basis using the scrum methodology. Delivering features in this fashion is difficult for even the best scrum teams, so our students are learning at an extraordinary rate through practice and not just theory.
Watch the video to feel the emotion and culture of a FireBootCamp for yourself.
Find out how you can become a world class .NET developer in 9 weeks at FireBootCamp.
I’m delighted to bring you an update from week 1 of our first ever FireBootCamp, SSW’s 9 week intensive course focused on software development methodologies based on building modern web applications with ASP.NET MVC.
The first week has just ended and, as the above video shows, the students are on fire!
It’s always exciting to be a part of something new, and this boot camp is no exception. My highlights from the first week included the reactions from our students when showed their allocated projects, and seeing the beginnings of what I’m sure will be a very rewarding relationship between the boot campers and FireBootCamp mentor/trainer Adam Stephensen. He, the boot campers and I have had some interesting conversations, and I’ve loved introducing the guys to the fundamentals of Scrum.
The first of many guest speakers, Andrew Coates of Microsoft Australia, came in and wowed the students with his presentation on Microsoft Azure, setting them in good stead to get working on the projects that they will have finished by the end of the course.
What’s next? Each week the students will be learning the technologies required to build an enterprise application using ASP .NET MVC5 using technologies like:
The Gala day will be a great opportunity to watch the FireBootCampers’ presentations, speak with them in an informal setting, book appointments for interviews, and enjoy a scrumptious morning tea on us.
Figure: BCE SPARROW uses a ‘metro’ design with all the latest Nuget packages for elegant, consistent and usable design
The benefits of continually improving our processes and practices around the Scrum methodology were never more apparent than with the project we have recently completed for Brisbane Catholic Education (BCE).
As developers, we’ve all worked on projects where the level of collaboration can break down due to any number of factors such as scope creep, availability of the Product Owner, ill-defined requirements or inadequate testing. One of the strongest benefits of Scrum is the focus on communication and feedback to alleviate these symptoms.
The BCE SPARROW Project
The SPARROW project is an extranet site designed to assist school principals when performing long term strategic planning for their school. As such, this was a project with a great deal of stakeholders.
On arrival, we found that BCE were ready for Scrum. They had tried applying agile principles to their own projects previously and were interested in formalizing the process. Following Scrum helped us to build a single collaborative development team comprising developers and a designer from SSW with testers and IT staff from BCE. The SSW team for this project included Damian Brady, Adam Stephensen, Brendan Richards, Ben Cull and Rebecca Liu.
Client Role: The Product Owner It was a pleasure to work with an excellent Product Owner from BCE, Kerry Edwards-Williams. Kerry performed brilliantly at managing this diversity of stakeholder input to give the developer team a single source of truth for tasks on the Product Backlog. For more information on this key role seeWhat is a Product Owner.
“I would not undertake any other project without using the Scrum methodology. I think it’s absolutely exceptional. It’s fantastic. I think my favorite thing about working on the project, was learning about the scrum methodology… and working with the SSW team… I’d highly recommend them to anybody.” - Kerry Edwards-Williams.
Client Role: The Tester
BCE Testers, led by Latha Matta, used Microsoft Test Manager to provide excellent bug reports directly into TFS – as per our rule: Do you know the three steps to a PBI?
Making client testers part of the development team worked to break down barriers between client and vendor and fostered mutual understanding and respect. This, in turn, led to fantastic turnaround times in identifying and responding to issues.
Figure: I’ll let one of the emails do the talking here…
Technical Details: The Middle Tier
It’s always exciting when a client comes you with a “greenfield” project as you get the opportunity to practice what you preach from day one. The core of the application follows Domain Driven Design within the Onion Architecture pattern. Dependency injection with Structure Map connects the various system components together.
Figure: Designing a system with Dependency Injection from day one encourages a clean, organised system design.
Technical Details: The Data Layer
Entity Framework Code First provides the main data persistence layer for the application while Entity Framework Database First was utilised when interacting with existing database resources. Updates to database the schema are managed through EF Code-First Migrations.
Technical Details: Automated Testing
Unit tests cover the core application components while automated Selenuim tests cover the overall site.
Technical Details: Continuous Deployment
In order to get fast feedback from testers, it is crucial that the process for deploying code changes to a testing server is as fast and painless as possible. Continuous deployment to a testing server, combined with automatic deployment of database schema changes via Entity Framework Code First migrations, means that a developer just needs to check in a code change and, if it compiles and the tests pass, this will be available on the test site within a few minutes.
Getting this deployed to the live production server was great, and I’m proud of the team for achieving this. Following the formal framework provided by Scrum helped us to build trust and collaboration across all aspects of this project. This then flowed through to a high level of agility when responding to issues and changes. Everyone on the team enjoyed working on this system and we’re confident that BCE is happy with the result – because at the end of every sprint we conducted a full review and retrospective.
Of course, you can learn for yourself everything about how we build awesome web applications at our FireBootCamp.