Did you say Xavier? We say spring – IT Spring! (Part 3) Afterword

The second annual IT Spring conference is over. What are the outcomes and feelings left after the event?…

IT Spring proved that Belarusian IT get-togethers are the events that are really longed for by the community and worth the time spent. IT guys are ready to meet to share and socialize on their topics of interest with the like-minded folks.

We expect quality presentations and bright presenters – and this year the conference gave the floor to many of them. We would no longer tolerate just see-through self-promotion speeches – we’d like to get value. And this value for us is hands-on experience and relevant advice from people who are there in the IT, and who are a success, who know that there is no road to the top without failures, but who are able to play their flops to their own advantage.

Some would say that there were plenty of no-brainers featured in presentations, but come on guys, we are not laymen in the niche and know what turns IT gears. After all, several good no-brainers can be easily converted into one or two brilliant ideas after being reminded of and when given a slightly different perspective to.

The coffee-breaks in-between the speeches oozed a friendly atmosphere and created favourable conditions for networking, and every here and there you would hear the latest IT rumours. The participants were able to continue their conversations and weave business connections.

The overall mood remained responsive and amicable both due to soft skills of the speakers who showed understanding despite all BUTs and TRICKs of Belarusian weather, and the efforts of Oxagile team that hosted the conference in the Spartan conditions.

In general, the event wasn’t all perfect and there is always room for perfection – the lessons were learnt. What we can say for sure is that the conference left us uplifted as we realized that the COLLECTIVE IT BRAIN really rocks!

Looking forward to IT Sring 2014!

Did you say Xavier? We say spring – IT Spring! (Part 2)

So, what were we up to at IT Spring?

Mobile Trends

Where money is in the mobile and how to monetize your apps: myths and reality

Yuri Gursky, Alex Krakovetskyi and Maxim Babich showed us some nice figures and warned that all that glitters is not gold.

Takeaways:

Cross-platform mobile development is often not worth the pain;

Focus on UX, it’s that very KING in the mobile;

The mobile is used as a powerful branding tool for consumer companies;

It’s difficult for a small fish to get noticed by users unlike for brand-name clients;

Mobile business has a major obstacle these days – marketing costs are getting too high to leverage traditional monetization models;

Options to get your ROI from mobile apps: freemium, in-app purchasing, in-app ads, paid apps, but better…

Start working on the backend of your apps and switch to B2B market (as Y.Gursky advised).

Effective Management

Agile and Scrum are in the spotlight

We were ready to roll up our sleeves to pick up the best practices from Agile and Scrum experts, who mentored the audience on how-tos of effective project management. Tatiana Belova, Vladimir Dobrov, Alexey Minkevich, Vladimir Ivanov gave their views of the right project process and management.

While Maxim Dorofeev and Dmitry Maleev threw into the traditional approach some fresh ideas and food for thought.

Takeaways:

If more than 400 000 Chinese make business by earning virtual gold and selling it for real money to gamers, then gamification can work well for managing and motivating IT teams (by Dmitry Maleev);

Try on the shoes of both a client and an IT team on the contractor’s side to spot where these shoes are tight – do care about the end-users of your software and create Green IT peace, create value (double-sided view of closing IT deals and contracts by Maxim Dorofeev).

Money

How to get money in Outsourcing? Or is it better to go and build your own product

We have witnessed panel discussions with successful outsourcers and product owners (Arkadiy Dobkin, Pavel Obod, Viktar Khamianok), listened to several presentations on how to make money in outsourcing and software product development tips and tricks (Pavel Obod, Steve Mezak, Pavel Kravchenko, Tim Evgrashin, Dmitry Zavalishin).

Takeaway:

You can be successful both as an outsourcer and a product owner, the only thing you need is passion for what you do – interesting projects are hidden within both of these business models.

Be your own boss: startups and freelancing

This topic was elaborated in a session of presentations (Ivan Semizhon, Aleksandr Sorokoumov, Alexey Meandrov, Stas Davydov, Denis Shavruk, Aleksandr Orlov and Slava Pankratov, Serhiy Berezhnyy, and Tom Herman), in hands-on  tips from foreign investors (Seth Elliot and John Ason) and a round of startup pitches from Belarusian entrepreneurs and guys, who try to kick-start their own projects (Tripmate, Orderino, Cliqus, Survey 3.0). The round was hosted by a successful Belarusian entrepreneur Mikita Mikado, owner of Quote Roller, and assessed and advised by experienced venture capitalists and angels from the USA.

Takeaways:

Accept the idea that you may fail;

Focus on a narrow niche – it’s better to be successful with one project than fail with many projects;

Investors seek for good people: money would rather go to a great team with a mediocre idea than to a bad team with a great idea;

Do your homework! Show investors that you’ve done research, realized the pain of your users and you are convinced that this pain is not scarce (comprises about 2 users around the world), analyzed your competitors and, in general, paid due attention to the business side of the project;

Practice, practice and practice! (by Seth Elliot)

Startups Mixer has demonstrated that Belarusian IT scene has a lot of guys with great ideas, but, for now, they often fail to polish the business side of their projects to make them look lucrative and promising for investors. American venture capitalists and angels – experts at Startups Mixer – again have proved that there are major differences in our cultures, regarding our business mindset. Americans have innate dealer’s eye and practical business approach since they are born and raised in the culture of the American dream pursuit and believe that everyone can be an architect of their own fortune, whereas here in Belarus we tend to get enthusiastic about an idea and plunge into the project straight away, discarding such down-to-earth issues as money. Keep it in mind if you want to deep-dive into your own venture.


Budgeting: how to treat your money right

Another round of presentations during our IT hangout was dedicated to the budgeting process with Kirill Golub, Mihail Sorokin, Sergey Dmitriev giving their view on this point.

Takeaway:

Good budgeting is not only about calculations on your side, it’s an art to make your clients believe that they will have a real bargain and value for their money.

Dreams

We even talked a little bit about our IT dreams with Katherine Lazarevich and Maxim Dorofeev.

Takeaways:

Let’s make our IT world uncluttered, vote for Green IT peace!

Do not reinvent the bicycle, be honest with your clients, when they ask for another “excel with an extra pair of arms”;

Eliminate information-for-responsibility exchange chains with a row of god-knows-what-they-are-here-for delegates;

Be passionate about what you do, because this attitude is contagious and makes you stand out in the crowd when you try to win a project;

Research the niche of your client since in-depth domain knowledge adds your company extra value in the eyes of your clients;

Differentiate your client personas and work out custom selling techniques that meet the specific pains of your clients’ profile;

Use technical knowledge at presell stages if you can;

Don’t be afraid to be different and invent your own approach to appeal to your clients.

Small is beautiful :-)

IT Spring 2013 is said to be about money in IT. Honestly, it can be well pronouned to be about Smart IT.

Did you say Xavier? We say spring – IT Spring! (Part 1)

Although, the weekend started with adverse weather conditions as the renowned arctic cyclone Xavier brought to a standstill not only Minsk and the entire region, but also blocked all the driveways to the capital and runways meeting our country guests. For many Belarusian people March 16-17, 2013 has left these imprints in their minds.

Well, not for IT people! For us this weekend was marked with geek fun, aka constructive IT networking,

many charismatic speakers like Maxim Dorofeev and Co, dancing Sirtaki :-) ,

real (!that’s why we were all there) knowledge exchange,

even at the neuron level :-) ,

good mood

despite early (for IT people) wake-up weekend hours,

and, of course, don’t forget about pancakes for Pancake Day.

All guests gathered at the venue, despite their intricate round-abouts on the way to Belarusian Spring.

Find more information on how it was on the official IT Spring facebook page and in Oxagile facebook feed.

Get the participants’ feedback, and leave your thoughts and ideas on our official Twitter pages: Oxagile and IT Spring Conference #itspring

Project Management Tools for Agile

Nowadays Agile methodologies are considered the most adaptable to constant emergence of new technologies, to new development tools and to more changeable customer’s requirements. Flexibility is obtaining special importance due to the general tendencies of the information system development – global mass online services, Web 2.0, the switch from software solutions to SaaS services, the popularity of SOA architecture, etc.

In the modern world it is impossible to imagine a software development project planned for 2-3 years and performed with ‘hard’ non-flexible technologies since nobody can predict how the world will change (and consequently, the requirements to the project or applied technologies) within this period. There’s another problem – present day customers who order IT projects very seldom imagine what exactly they need. They can’t clearly formulate their requirements to the software. Moreover, new innovative technologies appear practically every year and they require fast implementation because of fierce market competition.

In such conditions Agile is probably the best solution as it allows starting the project as quickly as possible, introducing details in the course of its realization. The development is carried out within small iterations (1-4 weeks) and at the end of each iteration the customer gets a valuable application (or its part) which can already be used for business process management.

Moreover, Agile can be used in various projects — from small students’ start-ups to serious industrial projects with thousands of man-hours developed by a large software development company. It’s rather difficult to find another approach or methodology with the same scope of application.

The flexibility of Agile methodology is one of the solutions for high efficiency of a software development process. Software companies also have a variety of tools to leverage in order to improve significantly their performance and productivity. Modern project management is impossible without planning and task tracking. Let’s have a look at some of them which, in my opinion, are the best solutions at present.

Basecamp is an online project management system developed by the 37signals company. The functionality of this system is huge and the possibilities are varied. Here are the most prominent features of this system:

• Viewing the general information on clients and projects on one screen

• Task setting and task tracking

• Uploading, categorizing and tracking of different versions of files

• Forums for discussing problems and tasks

• Milestone management

• Time tracking

• Adding comments and messages

• Compatibility with other applications, widgets and programs

Most companies make use of Basecamp as their primary collaboration/task management tool since it has an intuitive interface and can be used even by nonqualified users.

Redmine is a flexible system for project management based on the web application framework RoR (Ruby on Rails). The possibilities of the program include:

• Several projects support in one database

• Flexible system of adjusting user access rights

• Flexible system of tickets and tasks

• Gantt chart support

• Built-in system of forums on the project

• Simple time tracking system

• LDAP authorization support

• Multilanguage support

• Various database support

• Integration with version control systems (SVN, CVS, Mercurial, Bazaar and Darcs)

Comindware Tracker is a web application for managing business processes and tracking the elements with integrated functions of task management and collaborative work. Comindware solutions are based on the ultra flexible technology ElasticData™, which allows users to manage business processes with extraordinary flexibility and adapt to the existing business processes. Comindware Tracker includes free Comindware Task Management and the technology ConnectStep that allows automating the process of generating tasks for the next step and optimizing their execution practically for all business processes within one or several departments.

This list is not complete. Every software development company makes use of their own favorite tools and techniques. The choice is yours. But one thing is universal – all such tools can improve significantly your competitiveness and thus should be implemented.

Adobe AIR and Microsoft Silverlight: which platform to choose?

SD Times, the first and only newspaper that was launched for software development managers in February 2000, has become interested in our expertise in Adobe AIR and Microsoft Silverlight. So we have got an opportunity to share our experience with more than 60,000 subscribers in more than 130 countries.

Mr. Sergey Marchuk, the Chief Technical Officer of Oxagile, disclosed some secrets in his interview. First of all he explained whether it’s correct to compare Adobe AIR and Microsoft Silverlight, and noted that speaking about AIR on this point we should considered Flash / Flex development and such technologies as JavaScript / HTML.

Discussing pros and cons of both platforms he provided interesting data about their percent abundance. Silverlight was proved to be less popular than Flash (50% of PCs with preinstalled Silverlight plug-in vs. 97% of machines supporting Flash). Moreover their rates of popularity can change as new version of HTML (HTML5) becomes available. As we know, it allows watching video without any additional plug-ins (Flash Player or Silverlight). So, as the CTO of Oxagile stressed, nowadays it’s very important to find “the right” software developer and consult on how and which platform to use for every specific software project.

Testers ease conscience of software and web development companies

Application testing is a process involved in all life cycles of software development. It implies review and planning of the product requirements, preparation and performance of changes. As a result testers reveal inadequacies and errors. And trying to get a systematic view, every person in software development company actually plays the role of tester. If you look at IT-project as at a person, then roles of different specialists can be described in the following way:

•    Project Manager is a backbone and the autonomic nervous system
•    Programmers are a skeleton and motor nerves
•    Analysts are organs of sense
•    Testers is conscience

Software Quality Assurance is often considered as a synonym of testing, but this method actually was called upon to prevent errors beforehand, rather than finding and fixing them. Quality in this sense should be considered as a characteristic of finished product (software or web-application).


So, testers have to verify even requirements specifications, project plans and analysis, not just program code and interface. Software testing is particularly important in critical systems. For example, the Therac Radiotherapy apparatus (1985) irradiated 6 people with lethal dose of radiation due to the lack of code verification and validation. Or Mars exploration rover (1999) brought the loss of 125 million dollars because of crude common measurement system between developers. And even during the electronic elections in Estonia there were some problems because of poor high-load testing. These examples and practice of software and web development companies shows that all testers should follow basic principles from ISTQB test documentation and other sources.

Reducing IT risks

Every software development company faces a wide range of risks starting from the risk of simply doing nothing to the risk of catastrophe. It’s a universal truth that If you risk nothing you get nothing. The higher the profits, the greater risks are involved. Understanding risk is essential for effective performance of a software development business in general.

IT Risks management can be divided into four groups:
• dealing with operational risks – non-compliance with the regulation, relations failure, etc.
• managing financial risks – cash flow risks, exchange risks, etc.
• taking care of accidents – natural events, environmental impact, etc.
• preventing strategic risks – market changes, competition, etc.

There are five key steps to successful risk management.
1. clearly realize your IT project objectives;
2. define the risks to these objectives (consider not only obvious risks but latent as well);
3. assess and prioritize the risks (the possibility of their appearance against potential consequences);
4. assume measures to deal with the highest risks (introduce control over the situation, change the working process, prepare to cope with the possible consequences, outsource the risk, etc.);
5. inform the senior IT managers on all the risks – inborn and residual.

But what about reducing your IT risks by sharing them with someone else? One of the good ways to reduce the risk impact is outsourcing your project to a reliable software development company with a good reputation and positive testimonials.

How to read books on programming more effectively?

The majority of newbies and even some experts in software programming often ask themselves a question: how to read a book on programming? They want to save time and get more effect from reading.
What do you think? Which of the following tips would be more useful?
• To read one chapter, and only after that to study a set of examples and task solutions.
• To read a chapter and a set of examples at the same time.
• To read a chapter / book and then review examples only visually, inventing own analogues of described problems.

We asked Oxagile programmers what do they think about these questions and got the following answers:
• I try to go read the chapter, type examples (I think that mechanical typing is also beneficial for me =), then I try to invent my own tasks for the given topic.
• Traveling by subway I saw bearded guy who was reading the textbook on C + +, desperately commenting tasks in his notebook. I like this approach to the effective reading, but sometimes it looks like fanaticism =).
• I start my reading from different parts of the book at the same time =). And in such a way my new book can be full of multicolored bookmarks even at the first day.

The way of reading depends on your way of thinking, so you can choose your own variant of effective reading. Good luck!

How to take advantage of open source software during the economic crisis

JoomlaToday costs of new IT products development can be quite comparable with profits. The economic crisis has an impact upon corporate budgets, making software at reasonable prices more and more popular. And there is nothing out of the way! A lot of managers responsible for new IT-projects consider customized open source software as favorable decision that allows to develop more with limited budgets.

While vendors increase license fees, software developers specializing in open source software install and customization offer their customers independence and flexibility. This year open-source usage and adoption is on peak again, the same situation was in 2001-2002 during the previous economic decline.
Taking as an example the most popular open source CMS for website design and development like Joomla, Drupal, Wordpress and Magento we see that these free software products help to save costs giving new technologies, innovative web 2.0 design and other great solutions.

Open source CMS offers numerous advantages and possibilities. Whereas software companies that use their own software for web development slow down innovations, thousands of independent open source developers improve their projects almost every day. Moreover open code is a key for legal and simple CMS installation and full customization, beginning from some little modifications and ending by the development of new complicated modules. It means that free full packaged software products can be used not only for standardized projects, but also for exclusive design and non-typical web resources.

Choosing a partner in IT? Think twice!

If you want to have your IT project done perfectly and in the shortest terms, you have to think twice before taking a final decision on the company who will develop software for you. Not a company, but, in fact, a partner who will not let you down and will guard your reputation in the business world.

There are no special rules or certain algorithms of how to choose the best partner. Just try to comply with the following steps and you are likely to be successful.

• Make a list of companies providing services of software development. Find as many potential suppliers as possible.
• Specify a number of criteria for selecting the best variants. Such criteria can be various. It depends on what you consider the most important issues while choosing a partner: professional background of IT specialists, company’s financial health, correspondence with your quality processes and applied methods, cost of the project, or previous successful and failed projects. Note: you should take into account not only the employees’ knowledge in modern information technologies but also their knowledge in the certain domain that you are interested in (medicine, banking, accounting, etc.)
• Choose 2-3 companies from the list that suit your criteria.
• Carry out a detailed analysis of these companies. If possible, visit their headquarters, talk to the employees and managers, get feedbacks from their customers, etc. It isn’t necessary to choose one at this stage.
• Negotiate the terms of the contract: legal and financial issues, confidentiality, proprietary rights, liabilities, termination, penalties.
• Order a pilot project with the chosen companies.
• And, finally, make a final decision on your future partner for the software development project.

We make no pretense to consider the above-mentioned sequence of steps to be the algorithm of success. But one thing is definite – if you take into account our ideas, you’ll make fewer costly mistakes.