Every single company, and startups are no exception, depend on software. Software went from being critical to every business, to being THE business.
Software creation is an art, a craft and a process.
Building and shipping software is a marathon that lasts the entire lifetime of the company.
To ship software effectively, you need to establish cadence and a process. In this post, we discuss a lightweight framework and tips that startups can follow to ship quality software regularly and effectively.
1. Setup Sprints
To start, you need a light process for identifying what to build and how to actually build it. Teams that choose to ship without a process end up being chaotic, stressed out and ultimately not successful.
Here is a light process, called a sprint, that will help your team ship to production every 2 weeks.
The sprint starts with planning what to build. The features are organized into two lists – all features you want to implement and a subset of features you will actually implement in this upcoming sprint.
Before the beginning of the sprint, the team gets together and re-prioritizes all features. Once the ranking is complete, the top 3-5 features are moved into the list to be completed for the upcoming sprint.
Once the features are selected, they are LOCKED for this sprint. You can’t add new features in the middle of the sprint.
This is critical. Making changes in the middle of the sprint throws off the timeline and causes massive stress to your engineering team. Avoid doing this at all costs.
Similarly to having 2 lists for features, you will have 2 lists for bugs as well. Before the start of each sprint, re-prioritize all the bugs and move the ones that need to be fixed into the list for this sprint.
Here is a sample setup for your sprint:
- Planning: 3 days before the start.
- Fix Bugs:
- Day 1: Wednesday
- Day 2: Thursday
- Day 3-7: Friday – Thursday, except weekends
- Day 8: Friday
- Day 9: Monday
- Day 10: Tuesday
There are a few tricks to setting up the sprint.
Never release into production on Friday or in the evening.
Why? Because things tend to break and then you might end up ruining your weekend or be stuck in the office all night.
The second trick is to always fix the bugs first before coding new features. This way you are making sure that you are building new features on a solid foundation.
If your sprint is 2 weeks, you have 5 days to code new features. This is plenty of time assuming you broke down your features into small chunks. In fact, this system forces you to do that. You are always making progress, improving the product and moving forward.
The last part of the sprint is testing and making sure you release quality software.
The last few days of each sprint should feel like a spiral.
You test, find bugs and fix them. The closer you are to the release, the less bugs you should find. Once there are no bugs found, you are ready to ship.
When you are in the home stretch of the release, it pays off for everyone to focus on specific bugs or features together. When everyone is focused together, you squash down a bug faster and then move onto the next problem. This strategy helps the entire team spiral down towards the release together.
2. Prioritize and Handle Emergencies
In addition to implementing sprints, get your team to always prioritize and stack rank features and bugs.
When everything is important, nothing gets done.
Create simple and clear language that everyone can adapt when talking about priorities. For example:
- P1 – highest priority, business critical
- P2 – important, needs to get done, but not critical
- P3 – not important, nice to have
If there is a P1 bug that is found in production, and it impacts the business, you need to pause the release and push a fix into production. This situation should be rare.
If you are finding that this happens all the time, then you aren’t doing a good job testing and fixing bugs in the final stages of your sprints. You need to revisit how you are handling your spiraling down towards the release.
As you review your lists of features and bugs, re-rank and re-assign priorities. It is totally fine to have priorities change between sprints, just not during the sprint.
3. Pair Program and Test
Agile software development comes with a toolbox of methods to help build high quality software. My favorite two are pair programming and testing.
Pair programming is literally two engineers working together. One is typing the code and the second one is watching.
Pair programming may seem like a waste of time, but it is actually a more effective way to code especially critical pieces of your system.
Pair programming increases the quality of the code and establish awesome camaraderie between team members. You create clear and bug free code out of the gate.
Testing, and unit testing in particular, is another strategy to ensure quality code. It is actually pretty hard to write and maintain a body of tests for your code, but it is necessary and it pays off. After all, if you didn’t test something, how do you know it really works?
There are two types of tests that are particularly helpful. The first set of tests are for critical pieces of your software, things that just can’t break. The second are a set of tests that exposes the bugs you find. Whenever you find a bug, first write a test that exposes it and then fix the code. This way, you are certain that if the bug returns, your test will catch it.
4. Refactor Your Code
Like anything else in the universe, software decays over time. This may not be as obvious because we don’t readily see rust in the code, but it surely is there. Overtime, large-scale software becomes tangled and fragile and needs to be refactored.
The way to deal with it is to constantly refactor or improve your software. Much like how you go to dentist for a cleaning, you need to proactively clean your code.
Encourage the engineers to remove unnecessary code and constantly improve the software to make it better.
In addition, every 6-8 weeks schedule a cleaning and improvement sprint. In this sprint, instead of business features, the team is focusing on cleaning up the code, making it better and writing tests.
5. Create a Happy and Productive Engineering Team
It is really easy to grind down your engineering team, and most startups manage to do it quickly.
Startups thrive on chaos, but a chaotic approach to building software just doesn’t work. It is like trying to sprint through a marathon – you can’t do it.
Writing software is a highly creative and intellectually intense activity and requires a fresh brain, clarity and specific cadence. Software engineering can be either incredibly rewarding or incredibly stressful.
Setting up sprints and clear priorities is a great first step to creating a happy and productive engineering team.
By creating cadence, you reduce stress. By enabling your team to ship to production frequently, you are making the engineers happy. After all, there is nothing more rewarding than seeing the code you created work and make a real difference in the world.
Please share with us the strategies and techniques you use for building software in your startup.
This post was originally published on Alex’s blog.
It’s lift off at the April edition of Startup Weekend Dublin and the ideas to go through the weekend are finally decided on.
Day 1 saw participants get into the #SWDub spirit with Half Baked. The winner Prison Post, a paper based social network to help inmates get ready for the world outside won.
The game is however over and it’s time to get down to business. 32 ideas were pitched and after voting these 11 have emerged as those to be worked on during the weekend:
1. Gymy – Airbnb for Gyms
2. Health Assist – Health professional directory with online booking
3. Car Safari – Keeping kids engaged while on a long journey
4. Sober Sean – Uber-type service to get you and your car home after a night out
5. Be My Hermes – Last mile postal service via commuters
6. 11th Hour – Connecting local businesses with last minute temporary/shift workers
7. Skills Bank – Peer to peer skills swap
8. Startup Compost – Liquidation platform and knowledge repository for failed startups
9. Twirle – Social network connecting shoppers from the fitting room to fashion enthusiast
10. Xiron – Virtual coaching platform for gaming
11. Local Mi – Connecting customers to local businesses
The teams have been formed and it’s time to get into the trenches to validate ideas, build products, get customers, and priceless feedback from our on-the-ground and virtual mentors.
Many thanks to our sponsor Domino Pizza, Google for Entrepreneurs, DCU Ryan Academy, Bank of Ireland, and The T-Shirt Company for the support so far.
Keep up with the action on twitter via hashtag – #SWDub.
Yiannis is a serial entrepreneur with over 7 years’ experience in the High-Tech and Security Industries. Prior founding Crypteia Networks, he has been active in the fields of Telecommunications, Network Optimization and Security enabling Telecom Operators to optimize their networks, expand their added value services and enhance their customers’ experience. He holds a B.Sc. in Electronics Engineering and an M.B.A. from Athens University of Economics & Business.
GridAKL is currently a hive of activity as teams rush to perfect their pitches. Everyone is in it to win it and WOW the judges!
Special thanks to all our wonderful mentors for their hard work over the past two days. There’s nothing more inspiring and rewarding than seeing teams light up in an ‘Aha!’ moment after insightful feedback and advice.
The count down is on – only 2 hours left until show time! Here’s a final update of our teams pitching tonight:
- Access Map (@accessmapco)
Creating pathways towards universal access for our community and celebrating equality through crowdfunding and goodwill. Website: accessmap.co
- Me!Social (@MeSocial_)
Me!Social is an interactive user experience app designed to introduce you to new social experiences/events in your area. Website: me-social.co
- Flash Feeds (@flash_feeds)
Food deals. Easier and faster than anything else out there. Website: flashfeeds.co
EducateMeIT is your personal guide to IT Education. We provide a tailored training solution to meet your needs. Website: educate-me.co
A simple social trading app for travellers. Website: ziwi.co
- BasketTrack (@BasketTrack)
BasketTrack provides real time analytics of shopper behaviour and transaction sales data so supermarkets can make informed decisions about store layout and product placement. Website: baskettrack.co
Pacific island online marketplace. Website: sieni.co
- coCREATE.ninja (@CoCreateNinja)
coCREATE.ninja allows the new generation of web designers and developers to work together remotely. The solution integrates web cam & voice technology, file sharing, and social networking – allowing collaborative working to be speedier and more efficient. Website: cocreate.ninja
A mobile app to maintain positive mental health of ‘First Responders’ Services. Website: onmygame.co
- Class Compass
One pass you can use to any class, anywhere.
- Craft Beer Critiq
An app to challenge and help drinkers experience and find craft beer, and help the brewers market to get feedback for their products.
Connecting locals and activities. A fun and easy to use app that allows you to quickly scan your local area and find company to join you on activities when you want.
- Xignal (@xignallapp)
An app / web service that helps people who give presentations to improve their presentation skills with quick honest feedback from the audience. Bonus feature – opportunity to convert interest into leads. Website: xignal.co
Make sure you follow us on Twitter @AKLSW for the ACTION tonight!
Take a few minutes to provide some customer feedback and be a part of the magic of RVA Startup Weekend!
Doctor’s Orders: https://www.surveymonkey.com/s/QCBPMS5
While I Poo: https://www.surveymonkey.com/s/Q26SS9R
It Takes a Village: https://www.surveymonkey.com/s/QPLHM9F
Дизајнерите се најкреативните и инспиративни луѓе кои можеме да ги видиме во денешно време. Тие најчесто се мешавина од уметност и инжинерство. Тие можат да создадат ремек дела од една многу едноставна идеја.
Но често, дизајнерите „заглавуваат“ во процесот на завршување на проектот во целост. Доколку познавате барем еден дизајнер, сигурно знаете за што зборувам.
Тие многу често имаат потешкотии при завршувањето на работите, посебно кога за да се заврши тој проект според нив треба да се среди уште барем еден пиксел или да се додаде уште една идеја. Токму затоа, тука се програмерите и „не-техничките“ лица, кои можат да им помогнат на дизајнерите да ги завршат своите проекти.
Програмерите ќе можат таа идеја да ја претворат во нешто реално, додека пак бизнисмените или маркетинг специјалистите ќе можат да дадат совети како таа идеја да се промовира, рекламира и како од неа да се заработат пари.
Во еден тим сите членови се важни. А една добро дизајнирана идеја може да стане многу добар производ само ако таа е разработена од правилните луѓе.
Па ако сте многу добар дизајнер и имате многу јака идеја, дојдете на SW Скопје, а ние ќе ви помогнеме да ги запознаете најдобрите програмери и бизнисмени или маркетинг експерти кои ќе ви помогнат таа идеја да стане реалност.
Регистрирајте се на sw.mk! Ве очекуваме!
Минатата недела имавте можност да ги прочитате одговорите на најпоставуваните прашања сврзани со SW. Оваа недела, ќе ви дадеме неколку причини, зошто, програмерите, дизајнерите и бизнис/маркетинг/ПР специјалистите треба да дојдат и да се дружат со нас од 8-10 Мај во просториите на Telekom Innovation Center.
Јас не сум програмер, но за сметка на тоа, познавам многу (мажи и жени програмери) и според мене сите тие имаат еден исти начин на гледање на работите.
Е сега, сите ние знаеме дека програмираат (кодираат). Тој код се користи од мнооогу луѓе и без него, нашите омилени интернет работи (апликации, програми и веб страници) нема да постојат. Па така целиот бизнис сврзан со тие работи, нема да постои и луѓето како мене ќе останат без работа! (ако се чудите јас сум маркетинг експерт).
Е, добро тоа е мојата филозофија на работите.
Програмерите најчесто сметаат дека ако го напишат најдобриот код на светот, тој ќе биде лесен за пронаоѓање од страна на кориснциите, лесен за разбирање и користење.
Тие многу често се наоѓаат во стапица кога започнуваат да мислат дали тој код или производ (на пример апликација), ќе им биде корисен на корисниците и да се трудат да ги разберат своите потенцијални потрошувачи. Така ако тие не можат да ги разберат корисниците, како тогаш ќе можат да создадат интересен производ за нив.
Токму тука е местото за дизајнерите и другите „не-технички“ лица, кои можат да им помогнат на програмерите. Дизајнерите на пример, ќе го направат производот визуелно поинтересен и забележлив, па така истиот тој нема да биде отфрлен од страна на корисниците уште пред тие да стигнат до кодот. Освен тоа тие ќе можат да создадат и лице на тој производ, да дизајнираат лого, да му дадат соодветни бои и шари кои ќе бидат брендирани само за него и по кои тој производ ќе биде препознатлив.
Од друга страна пак, бизнисмените или маркетинг експертите ќе можат да им кажат која е нивната потенцијална публика, каде треба да се рекламираат, кои се каналите по кои ќе го рекламираат својот производ, што сака нивната публика, кои се нивните потреби и сл.
Така тие со помош на своите вештини ќе им помогнат на програмерите подобро да ги разберат своите корисници и заедно да создадат производ кој ќе биде визуелно интересен, препознатлив и разбирлив за повеќето корисници и се разбира со многу добар код зад себе.
И еве како се прави производ од кој можете лесно да заработите!!
Секоја идеја бара тим кој ќе ја развие таа идеја. Секој тим треба да има разновидност. Секој член на тимот треба да има различни вештини кои ќе му помогнат на производот да биде лесно забележан, интересен, визуелно примамлив и се разбира со многу добар бекенд.
Па ако сте програмер кој има супер код и многу јака идеја, дојдете на SW Скопје и запознајте се со најдобрите дизајнери, маркетинг експерти, претприемачи и бизнисмени кои ќе ви помогнат да ја развиете таа идеја со успешен производ и бизнис.
Регистирајте се сега и купете ја својата карта за Startup Weekend Skopje ( early bird картите можат да се купат до 1ви Април).
It has been a while, but when I was a young student I did both comedic and dramatic improvisational acting. Not to say I no longer like improv; if Dick Costolo started a new improv group, I would join in a heartbeat, #IPOWhosLaughingNow. I can say, without a doubt, that my experience helped make me a better leader, and here’s how:
Using Emotions Effectively
Improv is a form of acting, and there are many styles of it (one having been popularized by an older and newer television series). No matter the style, however, it is important for an actor to understand when, and when not, to be emotional in his/her delivery and to what degree. The same can be said for people leadership. When conveying your vision or debating with others, your emotional degree at any given moment can mean the difference between getting team buy-in and dealing with team mutiny.
Not Taking Myself Too Seriously
In comedy improv, you quickly learn to make fun of yourself and your surroundings. After all, there are few things more acceptably funny that your own shortcomings. When you are a leader, by definition, a group of people are looking to you for direction. Understanding for yourself and declaring to others that you are human and imperfect, and celebrating that fact, will only help you better relate to your team.
Instincts + Intelligence = Gold
In popular forms of improv, there is not a lot of time for actors to think about “what’s next.” Proper training, decent smarts, and quick thinking can lead to excellent results. The same can be said for leadership. Being able to make intelligent decisions while trusting your gut usually leads to excellent results.
Support the Team, Even in the Unknown
One of the central rules of improv is to never disagree with the direction of your partner(s), the reason being that conflict, unless intentional to the method, rarely looks good. Trusting your partner(s) instincts and direction is usually good for everyone involved. Your team (with their experience, instinct, and education) should be trusted in the same way. A leader is not a dictator, and when members of your team may have unique experiences that lend themselves to the task at hand, enabling the success of those individuals can lead to some great results.
Have some great improv stories, a favorite Whose Line sketch, or any critiques? Tweet at me with #improv, and let me know!
Cross posted from www.BrienBuckman.com.
After tons of hard work and thousands of votes, we have our official top 15 teams for the Innovator’s Circle Powered By .CO!
These teams will move on to the formal judging round, in which they will be assessed based on set criteria by a panel of startup experts. Each team is now eligible to win some incredible prizes from .CO, including a team trip to Paris or San Francisco, Google Hangouts with experts, and more. Stay tuned for the announcement of the Innovator’s Circle winner on December 16th.
Qdoc | Cordoba, Argentina – A web service where patients can find information and reviews about doctors, given by other patients.
BIZSTAMP | Accra, Ghana – E-stamping application that offers authentication.
WuuGames | Prishtina, Kosovo – A cross-platform 3D games with amazing game-play, great design and storyline that you will fall in love with.
BikeBed | Cordoba, Spain – We offer cyclists a safe and cheap place to store their bike.
Event Angles | Hyderabad, India – A website intended to act as platform for connecting event organizers with the event sponsors.
ReStory | Grenoble, France – An online safe-place for your memories.
coTrain | Bangalore, India – Looking for a sports partner or workout buddy? Now, find somebody through your work, community or social network to play with in one click.
Eventfe | Sanaa, Yemen – An application and website that lets you know all the events that happen around you.
VisionBoards | Detroit, Michigan – An e-commerce-enabled platform that allows users to easily create, print and share custom vision boards and other self-empowerment tools.
AppNight | Las Palmas de Gran Canaria, Spain – A smartphone application aimed at enhancing social relationships among nightlife venues customers.
Kitsnap | Phnom Penh, Cambodia – Bringing photos people share in different places (Facebook, Twitter, G+, or Flickr) and put them into one place.
Optics4Africa | Accra, Ghana – Connecting Africa to the rest of the world through data.
Fundstarter | Columbus, Ohio – A crowd funding platform for celebrities to raise funds for their respective charities. Allowing more organizations to do more good in the world.
My Universe | Helsinki, Finland – A cool visual social app for chatting and social networking.
Griflens | Toronto, Ontario – An entertainment and educational platform that spans online and offline worlds by combining physical, collectible beads with online interactive storytelling.
VirtualQ | Stuttgart, Germany – An app which virtualizes the queue in front of clubs and at events.
AreWeOpen | Des Moines, Iowa – An Internet-connected, “Open” sign for businesses who are open, “8 to close”.
Dress Me | Baghdad, Iraq – Augmented reality dressing rooms to help you choose your most suitable outfit, without having to actually try your clothes on.
APPartamelo.co | Barranquilla, Colombia – The easiest way to find your apartment.
Q-Health | Fort Lauderdale, Florida – Virtual queue check-in and notification system for healthcare facilities.
After tons of hard work and thousands of votes, we have our official top 15 teams for the Champion’s Circle, Powered by Google for Entrepreneurs!
These teams will move on to the formal judging round, in which they will be assessed based on set criteria by a panel of startup experts. Each team is now eligible to win some incredible prizes from Google for Entrepreneurs, including up to $20K match funding in an indiegogo crowd-funding campaign, a trip to Google HQ in San Francisco, mentorship from successful entrepreneurs, and more. Stay tuned for the announcement of the Champion’s Circle winner on December 17th or 18th.
Keepacy | Tehran, Iran – A mobile application which lets you hide data and apps on your phone.
Hacky Sacky | Guatemala – Links family entertainment, personal challenge and physical activity with current technological resources.
Shower Beats | Guatemala – A device that plugs into your shower and connects to your smartphone, allowing you to manage time and save water while listening to your favorite music.
Placetory | Tehran, Iran – A mobile app, which helps you to check the history of places at your current location and see all the historical events in a timeline.
Catsh.in | Halifax – An application which helps electronics consumers save money by tracking the price of the items they have bought and alerting them when the prices goes down.
TruckPad | Brazil – An app that connects the trucker to the cargo.
Morshid | Lebanon – A low cost system for unassisted mobility of visually impaired people.
OpenEats | Taiwan – An application which tells you if your food is safe for you or not.
SUNiT | Ljubljana, Slovenia – Smart sleeping system.
deTENS | Ljubljana, Slovenia – A physiotherapist at your fingertips. Simple, easy, appealing and connected to your smartphone.
Jibbin | Isfahan, Iran – Helps you find the best commodity with your budget.
Pawly | Toronto, Canada – An interactive, digital toy that helps you stay connected with your pet from anywhere.
Opp.io | Budapest, Hungary – A new communication protocol that blends text messaging with task and project management.
GiftyMifty | Tabriz, Iran – An application that lets your friends know what you want and lets them buy it themselves or as a collective group.
Wuu Games | Prishtina, Kosovo – A group of students from Kosovo, bringing cross-platform 3D games with amazing game-play, great design and a storyline that you will fall in love with.
iTravey | Aveiro, Portugal – A platform where you can submit your dream travel and have the agencies find you. Get the best deals, no search.
Airstock | Sheffield, United Kingdom – The global marketplace for drone operators to showcase and sell the world’s most unique aerial video footage.
If your team is in the top 15, you can begin working on your indiegogo campaign! Google will be matching funds raised for the winning teams, and a stronger campaign can only help you secure more funds! We recommend teams get started now; even if you don’t end up winning the match-funding, you will have the start of an awesome campaign to help you continue on your startup journey. If you’re ready to get started, use the GSB Campaign Creation Link to begin creating your campaign. The following resources are available to help you as you build: