Tag start-up

Shutdown Your Startup in 7 Steps

A month ago one of my startups Difio stopped working forever. This is the story of how to go about shutting down a working web service and not about why it came around to this.

Step #1: Disable new registrations

You obviously need to make sure new customers arriving at your web site will not sing up to only find the service is shutting down later.

Disable whatever sign-on/registration system you have in place but leave currently registered users to login as they wish.

Step #2: Disable payments

Difio had paying customers, just not enough of them and it was based on a subscription model which was automatically renewed without any interaction from the customer.

The first thing I did was to disable all payments for the service which was quite easy (just a few comments) because Difio used an external payment processor.

Next thing was to go through all subscriptions that were still active and cancel them. This prevented the payment processor to automatically charge the customers next time their subscription renewal was due.

Because all subscriptions were charged in advance and when canceled were still considered active (due to expire at some later date) Difio had to keep operating at least one month after all subscriptions have been canceled.

Step #3: Notify all customers that you are shutting down

I scheduled this to happen right after the last subscription was canceled. An email to everyone who registered to the website and a blog post should work for most startups. See ours here.

Make sure to provide a gratis period if necessary. Difio had a gratis period of one month after the shutdown announcement.

Step #4: Disable all external triggers

Difio was a complex piece of software which relied on external triggers like web hooks and repetitive tasks executed by cron.

Disabling these will prevent external services or hosting providers getting errors about your URLs not being accessible. It is just polite to do so.

You may want to keep these still operational during the gratis period before the physical shutdown or disable them straight away. In Difio's case they were left operational because there were customers who have paid in advance and relied on this functionality.

Step #5: Prepare your 'Service Disabled' banner

You will probably want to let people know why something isn't working as it used (or is expected) to be. A simple page explaining that you're going to shut down should be enough.

Difio required the user to be logged in to see most of the website. This made it very easy to redirect everything to the same page. A few more places were linking to public URLs which were manually rewritten to point to the same 'Service Disabled' page.

It is the same page used previously to redirect new registrations to.

Step #6: Terminate all processing resources

Difio used both AWS EC2 instances and an OpenShift PaaS instance to do its processing. Simply terminating all of them was enough. The only thing left is a couple of static HTML pages behind the domain.

Step #7: Database archival

The last thing you need to do is archive your database. Although the startup is out of business already you have gathered additional information which may come handy at a later time.

Difio didn't collect any personal information about its users, except email and didn't store financial information either. This made it safe to just make a backup of the database and leave it lurking around on disk.

However beware if you have collected personal and/or financial information from your customers. You may want to erase/anonymize some of it before doing your backups and probably safeguard them from unauthorized access.

That's it, your startup is officially dead now! Let me know if I've missed something in the comments below.

There are comments.

Traction: A Startup Guide to Getting Customers

Many entrepreneurs who build great products simply don't have a good distribution strategy.

Mark Andreessen, venture capitalist

Traction: A Startup Guide to Getting Customers introduces startup founders and employees to the "Bullseye Framework," a five-step process successful companies use to get traction. This framework helps founders find the marketing channel that will be key to unlocking the next stage of growth.

Too often, startups building a product struggle with traction once they launch. This struggle has startups trying random tactics - some ads, a blog post or two - in an unstructured way that leads to failure. Traction shows readers how to systematically approach marketing, and covers how successful businesses have grown through each of the following 19 channels:

  • Viral Marketing
  • Public Relations (PR)
  • Unconventional PR
  • Search Engine Marketing (SEM)
  • Social and Display Ads
  • Offline Ads
  • Search Engine Optimization (SEO)
  • Content Marketing
  • Email Marketing
  • Engineering as Marketing
  • Target Market Blogs
  • Business Development (BD)
  • Sales
  • Affiliate Programs
  • Existing Platforms
  • Trade Shows
  • Offline Events
  • Speaking Engagements
  • Community Building

The book is very easy to read and full of practical advice which should serve as a starting point and give you more ideas how to approach a particular distribution channel. It took me two days to read and I already had some ideas to test even before reading the whole of it. My next steps are to apply the principles to my current startup Obuvki 41 Plus and a future one I have in mind.

To anyone building a startup of any kind I would recommend the following selection of books:

Start reading right now (and also support this blog) by following the links below:

There are comments.

Tip: Collecting Emails - Webhooks for UserVoice and WordPress.com

In my practice I like to use webhooks and integrate auxiliary services with my internal processes or businesses. One of these is the collection of emails. In this short article I'll show you an example of how to collect email addresses from the comments of a WordPress.com blog and the UserVoice feedback/ticketing system.

WordPress.com

For your WordPress.com blog from the Admin Dashboard navigate to Settings -> Webhooks and add a new webhook with action comment_post and fields comment_author, comment_author_email. A simple Django view that handles the input is shown below.

@csrf_exempt
def hook_wp_comment_post(request):
    if not request.POST:
        return HttpResponse("Not a POST\n", content_type='text/plain', status=403)

    hook = request.POST.get("hook", "")

    if hook != "comment_post":
        return HttpResponse("Go away\n", content_type='text/plain', status=403)

    name = request.POST.get("comment_author", "")
    first_name = name.split(' ')[0]
    last_name = ' '.join(name.split(' ')[1:])

    details = {
        'first_name' : first_name,
        'last_name' : last_name,
        'email' : request.POST.get("comment_author_email", ""),
    }

    store_user_details(details)

    return HttpResponse("OK\n", content_type='text/plain', status=200)

UserVoice

For UserVoice navigate to Admin Dashboard -> Settings -> Integrations -> Service Hooks and add a custom web hook for the New Ticket notification. Then use a sample code like that:

@csrf_exempt
def hook_uservoice_new_ticket(request):
    if not request.POST:
        return HttpResponse("Not a POST\n", content_type='text/plain', status=403)

    data = request.POST.get("data", "")
    event = request.POST.get("event", "")

    if event != "new_ticket":
        return HttpResponse("Go away\n", content_type='text/plain', status=403)

    data = json.loads(data)

    details = {
        'email' : data['ticket']['contact']['email'],
    }

    store_user_details(details)

    return HttpResponse("OK\n", content_type='text/plain', status=200)

store_user_details() is a function which handles the email/name received in the webhook, possibly adding them to a database or anything else.

I find webhooks extremely easy to setup and develop and used them whenever they are supported by the service provider. What other services do you use webhooks for? Please share your story in the comments.

There are comments.

Book Review: UX for Lean Startups

Recently I've finished reading UX for Lean Startups and strongly recommend this book to anyone who is OR wants to be an entrepreneur. Here is a short review of the book.

This book is for anyone who is creating a product/service or is considering the idea of doing so. It talks about validation, interaction design and subsequent product measurement and iteration. The book demonstrates some techniques and tools to validate, design and measure your business ideas and products. Its goal is to teach you how to design products that deliver fantastic user experience, e.g. ones that are intuitive and easy to use. It has nothing to do with visual design.

The author Laura Klein summarizes the book as follows:

User research

Listen to your users. All the time. I mean it.

Validation

When you make assumptions or create hypotheses, test them before spending lots of time building products around them.

Design

Iterate. Iterate. Iterate.

Early Validation

This chapter helped me a lot to understand what exactly is validation and how to go about it. The flow is validating the problem you are trying to solve, then the market and then the product.

I will also add that by using some of these research techniques around a vague idea/area of interest you may come around a particular trend/pattern or problem and develop your business from there.

You’ll know that you’ve validated a problem when you start to hear particular groups of people complaining about something specific.

...

Your goal in validating your market is to begin to narrow down the group of people who will want their problems solved badly enough to buy your product. Your secondary goal is to understand exactly why they’re interested so you can find other markets that might be similarly motivated.

...

You’ll know that you’ve successfully validated your market when you can accurately predict that a particular type of person will have a specific problem and that the problem will be severe enough that that person is interested in purchasing a solution.

...

Just because you have discovered a real problem and have a group of people willing to pay you to solve their problem, that doesn’t necessarily mean that your product is the right solution.

...

You’ll know that you’ve validated your product when a large percentage of your target market offers to pay you money to solve their problem.

User Research

Next few chapters talk about user research, the various kinds of it and when/how to perform it. It talks how to properly run surveys, how to ask good questions, etc.

Qualitative vs. Quantitative Research

Quantitative research is about measuring what real people are actually doing with your product. It doesn’t involve speaking with specific humans. It’s about the data in aggregate. It should always be statistically significant.

...

Quantitative research tells you what your problem is. Qualitative research tells you why you have that problem.

...

If you want to measure something that exists, like traffic or revenue or how many people click on a particular button, then you want quantitative data. If you want to know why you lose people out of your purchase funnel or why people all leave once they hit a specific page, or why people seem not to click that button, then you need qualitative.

Part Two: Design

The second part of this book talks about design - everything from building a prototype to figuring out when you don’t want one. It assumes you have validated the initial idea and now move on to designing the product and validating that design before you start building it. It talks about diagrams, sketches, wireframes, prototypes and of course MVPs.

I think you can safely skip some of these steps when it comes to small applications because it may be easier/faster to build the application instead of a prototype. Definitely not to be skipped if you're building a more complex product!

Part Three: Product

This section talks about metrics and measuring the product once it is out of the door. Supposedly based on these metrics you will refine your design and update the product accordingly. Most of the time it focuses on A/B testing and which metrics are important and which are so called "vanity metrics".

I particularly liked the examples of A/B testing and explanations what it is good for and what it does poorly. Definitely a mistake I've happened to made myself. I'm sure you too.

Let me know if you have read this book and what your thoughts are. Thanks!

There are comments.

Why Taking Orders By Phone Works for My Start-up

Yesterday I've mentioned a start-up project called obuvki41plus.com and that it accepts phone orders instead of online electronic orders like everyone else. I will tell you why.

Taking phone orders Image CC-BY Southern Foodways Alliance

obuvki41plus.com is a re-seller business my spouse runs. It specializes in large size, elegant ladies shoes - Europe size 41 plus, which are hard to find in Bulgaria. There is a shopping cart component on the website which at the end redirects to a simple page with instructions how to order via phone. Why not online orders like everyone else? Several reasons!

The business target group is very limited - women who wear large shoe size and like the proposed shoe style and can afford the higher price (quality shoes only, sorry). On top of that the business model is online only. The rule of thumb is to make everything possible to lower barrier to entry for customers! Also don't make our lives harder in doing so.

  • Phone ordering is the easiest way for customers in Bulgaria. I myself often prefer it because of the too many steps and too many fields to fill-in when ordering online. The reality is that most local websites are horribly made with respect to user experience and many users are not that fluent with Internet as it may seem. No need to get people frustrated if they are about to spend their money with you!

  • Phone ordering, especially in the early business stage lets you know your customers. This is invaluable feedback for you as the owner and you can't get that from an online ordering system. It just doesn't work, I've tried!

  • A phone ordering system is just so easy to implement. Later that can be scaled with some automated IVR system and a call center; Or just migrate it to online ordering system;

  • The website in question is supposed to be no-maintenance as much as possible. It is static HTML and no database at all. Introducing online ordering is just too much of a technological overhead in this case;

  • Last but probably most important is customer care - not only we want to make it easy for them to order but want to prevent frequent returns caused by wrong product expectations or incorrect size. After all shoes need to be tried first.

So to summarize - the orders are taken in person via phone including objection handling and questions answering. An order may consist of up to 3 pairs of shoes which are shipped to the customer with the option to try them out upon delivery! Buy all or just a pair - it's a customer call! Small return fee is imposed to prevent abuse!

For that kind of business this seems to be the best solution so far. I'd love to hear other owners experience and decision logic. Please use the comments to tell us how you've organized the sales/ordering/delivery process in your company and why so. Thanks!

There are comments.

What Runs Your Start-up - Imagga

Imagga

Imagga is a cloud platform that helps businesses and individuals organize their images in a fast and cost-effective way. They develop a range of advanced proprietary image recognition and image processing technologies, which are built into several services such as smart image cropping, color extraction and multi-color search, visual similarity search and auto-tagging.

During Balkan Venture Forum in Sofia I sat down with Georgi Kadrev to talk about technology. Surprisingly this hi-tech service is built on top of standard low-tech components and lots of hard work.

Main Technologies

Core functionality is developed in C and C++ with the OpenCV library. Imagga relies heavily on own image processing algorithms for their core features. These were built as a combination of their own research activities and publications from other researchers.

Image processing is executed by worker nodes configured with their own software stack. Nodes are distributed among Amazon EC2 and other data centers.

Client libraries to access Imagga API are available in PHP, Ruby and Java.

Imagga has built several websites to showcase their technology. Cropp.me, ColorsLike.me, StockPodium and AutoTag.me were built with PHP, JavaScript and jQuery above a standard LAMP stack.

Recently Imagga also started using GPU computing with nVidia Tesla cards. They use C++ and Python bindings for CUDA.

Why Not Something Else?

As an initially bootstrapping start-up we chose something that is basically free, reliable and popular - that's why started with the LAMP stack. It proved to be stable and convenient for our web needs and we preserved it. The use of C++ is a natural choice for computational intensive tasks that we need to perform for the purpose of our core expertise - image processing. Though we initially wrote the whole core technology code from scratch, we later switched to OpenCV for some of the building blocks as it is very well optimized and continuously extended image processing library.

With the raise of affordable high-performance GPU processors and their availability in server instances, we decided it's time to take advantage of this highly parallel architecture, perfectly suitable for image processing tasks.

Georgi Kadrev

Want More Info?

If you’d like to hear more from Imagga please comment below. I will ask them to follow this thread and reply to your questions.

There are comments.

What Runs Your Start-up - RETiDoc

RETiDoc

RETiDoc automates personal ID data entry, speeding up customer service and eliminating costly errors. The product is based on OCR algorithms and could be used on hardware devices scanning the ID card or through a compact scanner box specially designed for the need. The main problem tackled by RETiDoc is manual data entry at service providers, which is a time consuming, low-customer satisfaction process, filled with expensive typos and low productivity at provider’s front offices.

Co-founder Martin Kulov takes us behind the scenes.

Main Technologies

RETiDoc is the second start-up featured on this blog to rely heavily on Microsoft technologies. Software development is done in C# using Visual Studio and Team Foundation Service.

Microsoft Test Manager is used to organize the test process!

Why Not Something Else?

Unfortunately this section is missing. The original format of this blog is for the start-up founders or head of IT to tell the readers what factors led to selection of the named technologies. RETiDoc team is busy at the moment, working on their product launch and don't have the time to fill-in the details.

Hopefully they will do so in the future.

Want More Info?

If you’d like to hear more from RETiDoc please comment below.

There are comments.

Text To Speech for Bulgarian

I've been exploring text-to-speech synthesizers for Bulgarian in the past few weeks. I found only three. Here is my review and opinion about two competitive companies, one of which lost me as a client.

eSpeak

eSpeak is a compact open source software speech synthesizer for English and other languages, for Linux and Windows.

I'm using espeak-1.47.11-1, from Fedora - the src.rpm rebuilt on Red Hat Enterprise Linux 6. Earlier versions do not support Bulgarian.

There is only one available voice for Bulgarian, which seems to have reasonably good pronunciation. There are some errors though, it's not perfect. The voice however is horrible. It's the worst computer generated voice of all solutions I've found so far.

Good for initial testing since it requires virtually no setup and can be used from the command line.

SpeechLab 2.0

SpeechLab is developed by the Bulgarian Association for Computational Linguistics. There's a sample of only one voice but I was told others can be added as well. Not sure about that.

Listening to the sample I think this is the most correct synthesizer of all. The voice still sounds computerized but better compared to eSpeak. The same voice is used by local TV channels when showing news related to Anonymous and one could probably say it will be accepted by the general public if used into a software product.

BACL has transferred the sales rights to a company called Aquasyst-Eco which claims to have a desktop and a server product. The server version is supposed to work on Linux too. There is also a version for Android.

Initially I thought to use SpeechLab but BACL and the trading vendor didn't make it easy on me. There's virtually no documentation, all links to samples from the official product pages are broken, they didn't reply to any of my emails nor phone calls.

As much as I prefer working/using locally developed products (not only software) I will never use SpeechLab because its creators don't give a fuck about customers. Why should I give a fuck about the product then?

Innoetics' SpeakVolumes

Innoetics is a Greek company, a spin-off of the Institute of Language & Speech Processing (ILSP) of ‘Athena’ Research Centre. Something like BACL I suppose but a bit more commercially oriented.

Initially I though to use their TTS Batch product to produce audio samples and asked for a demo. They were very quick in their response and gave me an FTP download of the software, plus demo activation key and documentation. Via email they've sent me tons of info plus pricing and additional proposals. I didn't even try this demo because it runs on Windows which I don't have.

It turned out Innoetics has built the SpeakVolumes web service which has two modes of operation - on-the-fly audio generation using a SOAP based API and offline generation via the web site. Pricing for SpeakVolumes (per words) was much more competitive than their Windows products for my use case.

I've created an account at SpeakVolumes and they've bumped up my initial words credit so I can give it a try. Works like a charm.

There is only one voice for Bulgarian called Irina (sample). The voice is very soft, female voice, speaks slower compared to eSpeak and SpeechLab and sounds very natural. It makes a few mistakes but from a 250 words sample that I used only a couple were pronounced with minor mistakes.

The web service generates a Base64 encoded MP3 file and returns it as response to the client. See example Python script here.

The fact that Innoetics involved with me very quickly and provided me with demo accounts and all sorts of information about their products and the web API makes SpeakVolumes my choice for Text-To-Speech conversion for Bulgarian.

Ivona

Andre Polykanine from the eSpeak mailing list told me about Ivona. It is a Polish company and seems to have been acquired by Amazon now. Andre told me Ivona had planned Bulgarian support some time ago, but now rejected it for some reason. They didn't reply to my email though.

Have you seen other text-to-speech synthesizers for Bulgarian? Let me know what are they and if you have tried them out.

There are comments.

Give a Book, Get a Laptop With Discount

Time Heroes

Bulgarian start-up TimeHeroes.org is helping a non-profit organization to collect used computers and books for children in foster care. They are helping more children get access to the Internet.

I will donate an Asus eeePC and a Fujitsu laptop plus all books from my Give Away List, which are not currently taken. Because this is not much I have an offer for everyone else, who would like to help.

What is the offer

Give a book or your old laptop and get a new one with discount!.

My company Open Technologies Bulgaria, Ltd. is an authorized reseller of Vali Computers and Fujitsu. Hardware reselling is not the main company activity but a backup in case a customer wants to purchase entire solution from one vendor.

I will not charge the standard reseller's discount (between 5% and 10%) if you drop-off your books or old laptops with me and agree to donated them to children. The offer is valid as long as the donation campaign is (I don't know how long but looks like ongoing).

You can select anything from http://www.vali.bg with the reseller's discount off! Delivery or pick-up is on you though.

If you want to participate use the comments below and I will get in touch with you.

There are comments.

Software Developer - Employee vs. Contractor, Part 1

Gold prospectors Image from Flickr.

People tend to think I have a dream job, when I tell them I don't go to the office. I will tell you a story about working from home, being a remotee and not having a regular job. Welcome to the world of contracting and freelancing!

Terminology

Definitions taken from Wikipedia:

An employee contributes labor and expertise to an endeavor of an employer and is usually hired to perform specific duties which are packaged into a job. In most modern economies, the term "employee" refers to a specific defined relationship between an individual and a corporation, which differs from those of customer or client.

An independent contractor is a natural person, business, or corporation that provides goods or services to another entity under terms specified in a contract or within a verbal agreement.

A freelancer is somebody who is self-employed and is not committed to a particular employer long term. For the purpose of this article this is more or less the same as independent contractor but for a short-term project.

Most important of all is that a contractor or freelancer is a separate entity from the organization they work for.

How I became a contractor

5+ years ago I was an employee for Red Hat in Czech Republic, but didn't want to permanently live there for many reasons. During my time abroad I was a frequent traveler. I became comfortable working on the go and quite often my bosses didn't know where I was. Most importantly I made sure that location didn't matter!

After 1.5 years I left the company with an option to continue working for Red Hat Switzerland as a contractor. This is how I started working from home.

The dark side

Many people think working from home is easy. Many think being a contractor is better than being an employee. Many think being away from the office means you will work less. Many think you will make more money. Most people are wrong!

I will highlight the bad side of being a contractor before exposing you to the goodies. Read the next parts before even thinking to quit your job.

Payment

Contracting or freelancing is much more different than having a regular job. If you are lucky you will have a long-term project and have a somewhat regular income. On the other hand freelancing is usually the term used when working on smaller short-term projects. They are irregular, so is your income.

You need to plan in advance your expenses and make sure your income will cover them. This is a lot easier with long-term projects.

Also have in mind that contracts and projects can be delayed, terminated and postponed relatively easy on behalf of the customer and there isn't much you can do. At best they have already paid you for the job done until now and you are out looking for the next customer.

Longer-term contracts I've been working on had the option to terminate without any explanation given in two to four weeks. This is a risk you have to accept and have a contingency plan if your income depends on a single long-term project.

You either get paid by the hour or a lump sum on predefined milestone (e.g. half before, half after delivery). Either way you trade time for money which isn't optimal (same thing do employees btw). The best thing you can do is become an expert in your field and begin consulting. This is trading less time plus expertise for more money - much better.

I've been doing QA consulting for other smaller clients as odd jobs since forever. Some of the companies include Obecto and Opencode Systems. I also consult start-ups in the field of software testing and quality assurance.

UPDATE: at the end of 2015 I've been engaged more frequently with the engineering team at Tradeo, bringing them my QA expertise.

Employee benefits

Employees do get a lot of benefits:

  • Christmas bonus
  • Quarterly bonus if the company is doing well
  • Performance oriented bonuses
  • 25 days of paid vacation which increase the longer you work
  • Extra health care
  • Unemployment insurance, social securities, etc.
  • Gym or other sport activities in the office
  • Lunch or some snacks at the office
  • Free car/cell phone/laptop, whatever

The bigger and more people oriented the company the more the benefits.

Contractors get nothing! Your contract payment is the only thing you get.

  • If you want a vacation - you don't get paid!
  • If you are sick - you don't get paid!
  • If you need equipment - you have to buy it!

Get used to it and plan accordingly! That said I do use company sponsored MacBook Air and have a small budget for visiting some conferences abroad. In addition I attend lot more events on my own either by helping as volunteer or being a speaker at the event. I also have a personal unemployment and extra health care insurance, in fact several of them, just in case!

Taxes

In every country dealing with tax authorities is a hell. If you are a sole proprietor in Bulgaria chances are you will pay more taxes and social securities compared to being a company for the same revenue. If you can, always incorporate a company and contract through it. As of late all of my income goes through the company entity, I don't receive a single cent on my personal account. At the end of the year I pay myself a divident and use the money during the next year.

Find a good accountant (as much as you can afford though) and make sure they know everything about your income and activities. It's always better to hire an accounting company which can grant you some protection and liability against prosecution from tax authorities - for example if they get their calculation wrong. The extent of this should be written in a contract.

If necessary also hire a lawyer. If you deal with lots of paperwork and contracts (or NDAs) this is definitely a wise thing to do. Don't spare your money, spare yourself going to jail.

Work environment

Working from your bedroom sounds cool but it isn't. You need a quiet and comfortable place to work. Every-day house distractions are your worst enemy. You need much greater discipline compared to working in an office.

My own work environment has evolved to having the best office chair from Sweden, custom designed furniture to make my life easier and access stuff more quickly, maximum usage of storage space at home, SOHO network designed by myself so that every device has its place and plug, backup Internet connections, etc. You need to invest in your work space to reap the benefits later.

I also follow a strict regime and have some fixed hours for work and no-work related activities. I split them between regular 9-5 business hours and evening/early morning to have more flexibility. Whatever the case you have to plan your activities and stick to your plan.

In the office there's always time for a coffee or some chit-chat. At home there is not. Every hour counts to your bonus so it is in your interest to log as many hours as possible and perform actual work during them. There are some freelance websites such as oDesk (which sucks btw) that require you to install software to monitor your screen, camera and keyboard in order the customer to see you were actually working.

Beware that there are physical limits which you can't break without putting your health at risk. I've tried working 200+ hours a month. It is doable once or twice a year when you have lot of things to do. But you can't do it all the time. I've tried, trust me.

Another important thing is the social element. Being out of the office minimizes the opportunities to socialize with co-workers or simply ask for help. A contractor needs some other way to compensate for this - being part of special interest groups, attending events and the like.

No customers risk

As with every business there is a risk of not having the right customers or not having them at all. There are several things you can do to minimize this risk:

  • Be an expert in at least one field - this is your primary focus; For example: I'm an expert in Quality Engineering and Red Hat Enterprise Linux;
  • Become very good professional in few more fields - mine are cloud computing, Python and Django and general open source programming;
  • Grow your network of friends, co-workers, IT professionals and possible customers - you never know where the next customer will come from;
  • Stay current with popular technologies (no need to be expert) so you can learn quickly if the need arises;
  • Have some backup skills where there isn't much competition and customers will have a hard time finding the right guy. Also make sure you know where to find these customers. My skill is Pascal - its an old language but there are lots of legacy software which still needs to be maintained. Did you know you can even run COBOL in the cloud these days?

Diversify and be flexible - you have the opportunity to generate income from various sources - use it. I will tell you about mine in the next part of this article.

UPDATE: I also strongly recommend the The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich book by Tim Ferris. It is one of my all time favorite books and I try to live by its rules as much as I can. I've also done a book review here.

TO BE CONTINUED ... meanwhile use the comments below to ask me things you are curious about.

There are comments.

Balkan Venture Forum Sofia Post-mortem

BkVF Sofia

Balkan Venture Forum in Sofia is over. It's been two very exciting days, full of many interesting talks both on stage and off stage.

There were so many things that happened and so many new people I met that it will be hard to mention all of that in a single blog post. I just want to highlight the things I enjoyed the most.



Networking & pitching at the bar

I've been invited to BkVF long ago. However my initial intention was not to attend because this month proved to be very busy. I've changed my mind after Boyan Benev, one of the organizers invited me 10 days ago with an interesting proposal - distribute Difio's beer mats at the bar!

Difio beer mats

So I was there for the networking. As I used to say when people asked me if I was pitching

I am pitching at the bar!

Networking was very intensive both during the coffee breaks and cocktail and during the sessions. I've now got close to 50 new business cards in my pocket. I've met very cool guys and gals both developers and non-tech.

From the companies that were pitching in the main hall I particularly liked Imagga, Transmetrics and Kimola. Imagga was probably the most deep-tech/science oriented company at BkVF while Transmetrics and Kimola focus on cloud and big data solutions.

BlackBerry development session

OK, I'm not into mobile technology nor smart phones but that may change soon. BlackBerry had a strong presence and I was able to talk to some of their developer support folks. The OS of BlackBerry 10 is based on QNX kernel with multiple SDKs available to write apps. Most of all I like the fact that it is POSIX compliant with C/C++ native SDK available. Qt/QML is also available.

I'm particularly interested in how hard it will be to port some existing open source tools to BlackBerry. I'm talking Bash, Python and the command line tools I currently use on Linux. I'll be contacting them in the near future to get a device for testing and hacking and will keep you posted.

There are comments.

Why Instagram Could Not Be Founded In Europe

Can a company like Instagram be founded in Europe and successfully exit for $ 1 billion? What do you think ?

This is precisely the question Bartłomiej Gola asked at WebIT BG last week. Here are his answers.

Theory says yes

In theory Europe is well suited for successful companies:

  • We have talented software engineers and hackers;
  • Great ideas are available everywhere;
  • Funding is available - both early stage seed funding as well as VCs.

Forget about it

The short answer though is "forget about it"! There are several major differences between Europe and Silicon Valley which could break your start-up easily.

1) Europe doesn't have a strong branding with respect to technology. We are not perceived as a strong tech community which produces great things. Not to mention individual countries like Bulgaria. This means foreign investors are less likely to invest in European companies because they haven't heard about other successful companies coming from the region.

We as a community should work together and popularize the region (especially South Eastern Europe). I've seen this already in action. German cloud provider cloudControl has branded their website as "Proudly Made In Berlin".

2) The lack of reputation leads to the second issue - less followers on social media. Think about it! How many people in the US or Silicon Valley do you follow on Twitter? How many follow you back? How many of those who do, actually engage with what you share?

With some exceptions like my friend Bozhidar Batsov your social reach is quite limited when it comes to hi-tech users.

3) Less reputation plus less social reach means less buzz and less early adopters. Silicon Valley is a great place to generate buzz and find early adopters. Because of the software industry and many start-ups located in the area people generally have more open mindset and will try out new ideas, share valuable feedback, engage in social media and spread the word.

Early adopters are crucial for every start-up. And we don't have this mindset in Europe. I have seen it myself. From 400 friends and co-workers whom I've contacted via LinkedIn, half or more of them in Europe, only a few, not even a dozen have tried Difio. And we are talking about service from developers about developers. Nada.

I've tried another experiment as well. This time about non IT business. From around 100 female friends on Facebook around 10 followed a Facebook page which I've invited them to. The page is online ladies shoes shop.

What to do about it?

I don't have a clear answer here. We need to work hard and make Europe and Bulgaria well known in the software industry and start-up community. I encourage everyone to try, fail, try, fail and try until they succeed. And brag about what you do all the time.

This also prompted me another question. "How do companies in the Bulgarian start-up eco-system find their early adopters?" I think I'm gonna start a new blog category dedicated to this topic.

Is your company the next Instagram? Please use the comments and tell me.

There are comments.

What Runs Your Start-up - Deed

Deed

Deed is an action-provoking platform for challenging yourself and others and also a business solution for improved engagement by the corresponding communities. It solves the problem of passivity by converting people who “Like” to people who “Act. The challenge format gives businesses an effective, fresh and low-cost solution to maintain active connection with their communities and measure engagement.

Emil Stoychev explains their technical background.

Main Technologies

Deed is built around Microsoft technologies plus some open source libraries.

Their web application and API is built with ASP.NET MVC 3 using MS SQL 2008 database engine. Deed is hosted on a single cloud server at Rackspace and uses Akamai CDN for static files distribution. At the moment the team is testing Windows Azure cloud platform and plans migrating there.

A native Windows Phone application also exists.

Lots of JavaScript and CSS frameworks come to play at the web interface layer like jQuery, Handlebars for templates and Less CSS.

IDE of choice is Microsoft Visual Studio 2012 for C# and Vim for everything else. Source code revision control is managed with Mercurial and build scripts are written in Python.

Why Not Something Else?

The Deed team had experience with Microsoft technologies initially so it was natural for us to choose this stack. While not perfect and costly in terms of hosting fees, it serves its purpose for the moment. When you start a new project and you want to get up and running fast your best choice is to use what you already mastered. That in our case was the Microsoft stack.

Emil Stoychev

Indeed I strongly support this! Always use technologies you are a master at and change and adapt along the way if necessary.

Want More Info?

If you’d like to hear more from Deed please comment below. I will ask them to follow this thread and reply to your questions.

There are comments.

What Runs Your Start-up - MaistorPlus

MaistorPlus logo

MaistorPlus solves the common problem of finding a reliable builder or handyman. An online platform that brings master craftsmen and homeowners together.

The process is really easy. Homeowners post jobs on the website and receive offers from relevant tradesmen. After the job is done homeowners leave feedback and recommendations. With this feature homeowners can compare tradesmen profiles, offers and ratings and confidently choose who they want to hire.

The team is also runner up at the Start IT Smart 3Challenge. Boris Sanchez shared their technical mojo.

Main Technologies

Main technologies used are PHP, Symfony 2.1 and PostgreSQL.

MaistorPlus is a traditional web platform developed with the Symfony framework. Web pages are rendered by Twig - a straightforward, flexible and easy to extend templating engine, which is integrated into the Symfony framework by default and works server-side with PHP in order to generate dynamic content, based on data stored in the database. Web pages also use jQuery and Sizzle.js and feature modern graphics. Everything is beautifully styled with CSS.

Why Not Something Else

The original development team already had experience with Symfony, Zend, Spring and some other web application development frameworks. We opted for Symfony for two main reasons. First, Symfony is constantly improving, and has a strong and continuously growing community that offers 3rd party add-on components for free. Second, PHP is a bit easier to "learn as you go" then Java. The members of our design team didn't have a lot of prior programming experience, so we wanted to make sure we set a low barrier of entry for them, as we didn't have the enough development staff to have a distinct separation between design creation and design integration in our team.

For the initial prototype we used the MySQL database management system. After a while we wanted to add spatial features to the business logic, and discovered that MySQL does not have proper support for spatial indexing. We therefore decided to migrate to PostgreSQL, which supports spatial data with add-ons like PostGIS.

Boris Sanchez

Want More Info?

MaistorPlus is going to organize a Beta Testing next month. You are welcome to subscribe to their monthly newsletter or follow them on Facebook / Twitter.

If you’d like to hear more from MaistorPlus please comment below. I will ask them to follow this thread and reply to your questions.

There are comments.

What Runs Your Start-up - Ucha.se

Ucha.se logo

Ucha.se makes learning fun. It is an online platform, on which pupils and students learn and prepare for school. Pupils learn faster, improve their results and get inspired. The platform allows students to watch videos, take tests, ask questions and share comments. Learning is represented with gamification components like drawings, playful narration, dashboards with the best students, etc. It is available on the web and is extending to mobile. Ucha.se is well recognized by the parents and teachers in Bulgaria. In November 2012 Ucha.se was awarded as the best website in Bulgaria in the field of Education and Science.

Nikolay Zheynov is leading the IT team which maintains and expands the web platform. He shared with me some of the internals.

Main Technologies

Main technologies used are PHP, MySQL, Nginx, jQuery and jQueryUI.

Server-side development is done with PHP 5. The main reason for choosing PHP is that the IT team working on the platform had long experience with the language. Ucha.se has developed their own PHP framework which is constantly expanding. This allows flexible programming and easier application maintenance. Nginx is the web server of choice.

MySQL 5 is used for the database because PHP + MySQL is like bread and butter. While the site usage was growing the team had to optimize their DB layer and switched from MyISAM storage engine to InnoDB.

On the client-side standard web technologies are used - HTML5, CSS3 and JavaScript. The main goal when doing the website design was to match expectation from different user groups - pupils, teachers, parents and students. jQuery and jQueryUI are widely used on the client side.

Why Not Something Else?

True to our agile approach to incrementally enhance the product and the technology that goes along with it, we strongly believe in the scaling on demand practices. Ucha.se's own framework reflects exactly to that. It allows us to meet our growing user demands and provides at the same time, the dev-team with enough flexibility to quickly react on new business opportunities and technological (r)evolutions.

Nikolay Zheynov

Want More Info?

If you’d like to hear more from Ucha.se please comment below. I will ask them to follow this thread and reply to your questions.

There are comments.

What Runs Your Start-up

I am starting a new section called What Runs Your Start-up where I will write about the technologies running behind some interesting start-up companies and why they made their technological choices. The articles will be short and to the point. Interested readers can engage in discussion with start-up owners in the comments later.

I am starting with a dozen companies from the Bulgarian start-up eco-system and will present one or two start-ups per week. If you'd like to read about a company which is not listed here or want to promote your own just let me know.

There are comments.

What Runs Your Start-up - Useful at Night

Useful at Night logo

Useful at Night is a mobile guide for nightlife empowering real time discovery of cool locations, allowing nightlife players to identify opinion leaders. Through geo-location and data aggregation capabilities, the application allows useful exploration of cities, places and parties.

Evelin Velev was kind enough to share what technologies his team uses to run their star-up.


Main Technologies

Main technologies used are Node.js, HTML 5 and NoSQL.

Back-end application servers are written in Node.js and hosted at Heroku, coupled with RedisToGo for caching and CouchDB served by Cloudant for storage.

Their mobile front-end supports both iOS and Android platforms and is built using HTML5 and a homemade UI framework called RAPID. There are some native parts developed in Objective-C and Java respectively.

In addition Useful at Night uses MongoDB for metrics data with a custom metrics solution written in Node.js; Amazon S3 for storing different assets; and a custom storage solution called Divan (simple CouchDB like).

Why Not Something Else?

We chose Node.js for our application servers, because it enables us to build efficient distributed systems while sharing significant amounts of code between client and server. Things get really interesting when you couple Node.js with Redis for data structure sharing and message passing, as the two technologies play very well together.

We chose CouchDB as our main back-end because it is the most schema-less data-store that supports secondary indexing. Once you get fluent with its map-reduce views, you can compute an index out of practically anything. For comparison, even MongoDB requires that you design your documents as to enable certain indexing patterns. Put otherwise, we'd say CouchDB is a data-store that enables truly lean engineering - we have never had to re-bake or migrate our data since day one, while we're constantly experimenting with new ways to index, aggregate and query it.

We chose HTML5 as our front-end technology, because it's cross-platform and because we believe it's ... almost ready. Things are still really problematic on Android, but iOS boasts a gorgeous web presentation platform, and Windows 8 is also joining the game with a very good web engine. Obviously we're constantly running into issues and limitations, mostly related to the unfortunate fact that in spite of some recent developments, a web app is still mostly single threaded. However, we're getting there, and we're proud to say we're running a pretty graphically complex hybrid app with near-native GUI performance on the iPhone 4S and above.

Want More Info?

If you'd like to hear more from Useful at Night please comment below. I will ask them to follow this thread and reply to your questions.

There are comments.

The Silicon Prairie Movie

Not all innovation needs to come out of Silicon Valley!

I've just watched Silicon Prairie (download for free or as much as you can afford). Last fall, a team of journalists and activists joined reddit's Internet 2012 Bus Tour and traveled from Denver, CO to Danville, KY to capture the Internet’s role in the US Midwest's growing Silicon Prairie. Nimblebot, a digital agency, shot and produced a mini-documentary showcasing the journey. I particularly liked several companies listed below.

AgLocal

AgLocal connects quality meat producers with high-margin buyers. This can work very well in Bulgaria. Most food and agriculture producers in the country are small and mid-sized farms who struggle to sell their produce or work with middlemen for a low margin. On the other hand there are more and more people, especially in big cities who would like to pay for locally produced food but don't know where to buy it from or don't have the time to visit a farm to buy it (like myself). Last but not least what big supermarket chains sell is simply too expensive and crappy.

As far as I know there are several attempts at such kind of companies/organizations here but they are small and not widely popular.

Homes For Hackers

Homes For Hackers in Kansas City is offering 3 months of rent-free, Google Fiber-connected start-up space to entrepreneurs. I have already heard several people discussing similar ideas in Bulgaria, mostly because cost of living here, hence cost of failure is very low. I wish them good luck.

SparkFun Electronics

SparkFun is an online retail store that sells the bits and pieces to make your electronics projects possible. According to the movie they create open source hardware and even shipped to Antarctica which is cool.

Once again this business model can work in Bulgaria. We had lots of electronics produce back in the past and still have. There is still talented people in this area who will be looking for a job if their companies close shop due to Chinese competition.

Watch the movie and tell me which ones you like ? Do you think Bulgaria can have its Silicon areas outside Sofia Valley ?

There are comments.

The shoes start-up

Did you know there is a start-up company producing men's shoes? Me neither, and I love good quality shoes.

Beckett Simonon launched in 2012, and slashed prices by working with local manufacturers and selling directly to customers online.

The company, which currently operates out of Bogota, Colombia, says it has generated $80,000 in revenue after two months in operation, and has five employees.

Julie Strickland http://www.inc.com/julie-strickland/mens-fashion-startups.html

From what I can tell Beckett Simonon produce nice shoes. I would rate them between very good and high quality, just looking at the pictures. All designs are very classy and stylish, which is rare these days. Leather looks high quality, soles too.

The ones I loved right away are the Bailey Chukka Boot model, shown here. So far my gut feeling about shoes has never been wrong, even on the Internet, so I'm thinking to pre-order a pair.

Anybody wants to team up for a joint order?

There are comments.

StartUP Talk#5 - book list

Yesterday I have visited an interesting talk by Teodor Panayotov held at betahaus Sofia. He was talking about his path to success and all the companies he had worked in or founded.

I'm writing this post as a personal note to not forget all the good books Teodor mentioned in his presentation.

I intend to read the these four as a start:

The 4-Hour Workweek: Escape 9-5, Live Anywhere, and Join the New Rich (Expanded and Updated)

The E-Myth Revisited: Why Most Small Businesses Don't Work and What to Do About It

Mastering the Hype Cycle: How to Choose the Right Innovation at the Right Time (Gartner)

Business Models Made Easy

The rest he recommended are:

How to Get Rich: One of the World's Greatest Entrepreneurs Shares His Secrets

Abundance: The Future Is Better Than You Think

The Singularity Is Near: When Humans Transcend Biology

The Law Of Success: Napoleon Hill

If you happen to read any of these before me, please share your thoughts on the book.

There are comments.


Page 1 / 1