The Knife Maker–Great Story of Starting Your Business

by andrej 11. November 2011 17:00

Joel Bukiewicz of Cut Brooklyn tells his story of starting his own business of making knifes. Well shot video from the series “Made By Hand”.

Stumbling into Your Passion – or Finding it

First interesting turn in the story is the way Joel moves away from considering himself a writer. Take a timeout and most and formost do stuff. Experiment. And eventually you are going to stumble or get pushed into something that really suits you, that you can and want and are passionate about.

Getting Real Feedback from Real People

One thing that reminded me a lot when I switched from studying to product design and eventually user experience design, is the fact that your work, your product is used by someone, helps them and if you did a good job is appreciated by them.

Same thing here: Making knifes for people to use them and thus give something to a community, become part of that community is always a very strong motivator and very likely to make you like your work.

Putting in the Hours, the Sweat, the Blood

Once you found a profession that suits you, that fulfills you, that makes you happy working in it, you still have to turn it into a business that allows you to keep doing it. And to start earning money from your passion means, you have to become very good at it. “So good they can’t ignore you” as Steve Martin says.

There is no shortcut, no easy way to become competent. As Joel puts it: “Buckets of sweat and blood and work to get there.

Focus on the Value of Your Work

Figure out what value you create and why your customers care about your product.

Stick to this value and work hard to maintain it. In our case at teamaton it is delivering a software product that helps our users to get something done and by doing so delivering a great and enjoyable user experience. In Joels case it is delivering quality by making everything by hand.

That is why I like these stories of how passionate and competent people got to do what they are doing. It is a great source of inspiration and shows me whether I am on the right track.

Tags: , , , ,

business | strategy | inspiration

Facebook Investor on The Future of the Technology (google, cloud, html5, ui)

by andrej 1. November 2011 19:10

Roger McNamee is the Co-Founder of Elevation partners and has succefully invested in facebook.

In this talk he speaks about his perspective on future markets, possibilities and investment strategies.

Some of his points include:

  • google is loosing in the index search market: thanks to mobile, facebook, yelp
  • html5 makes real creativity on the web possible – engagement is possible on every site
  • get an ipad! it is the new ui
  • architectual shift: cloud plus screen
  • don’t invest in social – it is a feature


Tags: ,

business | strategy | talk

Creator of balsamiq Talks about Starting and Running a Software Company

by andrej 1. November 2011 17:58

Peldi who created the very popular and obviously profitable wireframing tool balsamiq talks about his experience of starting your own software company. Some interesting insights into fears, challenges and solutions for startups and software creators.

Here is the video:

Check out the transcript over at the business of software blog.


business | software | strategy | web application | talk

Guy Kawasaki on Steve Jobs: “Changing Your Mind is a Sign of Intelligence”

by andrej 1. November 2011 16:25

The well known venture capitalist and former apple employe Guy Kawasaki has published an interesting list on what he has learned from Steve Jobs.

My favourite is: “Changing Your Mind is a Sign of Intelligence”. In my experience being able to adapt either to market development or social situations fast and intuitively is one of the major challenges when working in such a fast-paced business as the internet. No matter what you are doing, within less than 12 month you are doing something almost completely different.

But there are also some other nice take-aways.

Check out the whole post at Guys blog.

Tags: ,

business | strategy

.NET Open Space 2011 (Leipzig) - Review

by anton 24. October 2011 15:21

I have been again to the .NET Open Space in Leipzig. This time with my colleague Oliver.

I have written a Review last year. I want to take the opportunity to write what has changed in teamaton since then:

  • We took a few steps towards a more agile development. We think these were steps in the right directions :). Since we started with two new projects, we could practice different approaches. I still haven’t looked closed at Scrum and XP.
  • We implemented a good GIT workflow, even without the git flow software.
  • We are by far more disciplined when testing – even though there is still room for improvement. Mark has automated many of our Selenium tests. We work much more often according to TDD. With our last project we started with SpecFlow, that is with behavior driven development.

Back to the Open Space of this year. I liked it. It was refreshing to see so many developer from the .NET, and talk to them. The first day was not as interesting regarding the sessions as the second day. The atmosphere was good – there were more than 150 people, many from Berlin, where our office is. Everyone could kegel, get a massage, and participate at different lotteries.

Here are a few topics, where I joined the discussions.

NET Open Space Time Wall

Message Queues (RabbitMQ)

I haven’t thought about message queues a lot. Yet, we do have an area of application for those: Sending emails from within a web application.

Why should one use MQs?

  • separated systems – therefore a higher reliability of the different components
  • scalability with all the pros which come along
  • no waiting on feedback – important for long actions
  • the queue is persistable – does not get lost in case of a crash

How does it work? One or more publishers push messages into a queue. There are one or more subscribers listening to the queue, and work off the messages. Publishers can push different tasks to different queues, which then are listened to by different subscribers. One can imagine a system of prioritization with this feature.

Tools: We discussed a small example with RabbitMQ (und EasyNetQ). We talked about the differences to MSMQ und NServericeBus. As it seems, RabbitMQ is more powerful (applicable to different platforms), but MSMQ is easier to understand for beginners.

Agile Development

First we discussed the division between ProductOwner and ScrumMaster. Then we talked about how detailed UserStories should be written out, and who should create them. All in all we concluded that UserStories should first be roughly described by the ProductOwner and then refined with the help of a developer while talking about the problem at hand.

As a takeaway I will try to promote more feedback meetings or retrospectives in our firm. We should compare more often our expectations and the reality and impediments. Many other firms organize estimation meetings, where they also define acceptance criteria – maybe we should do something like that, too. I want to look into Scrum, even though we are not enough people for this process, but there may be ideas we can apply to our little firm.


There were a few sessions to CQRS, because it was new to many of us, and very interesting. Command-Query Responsibility Segragation is an architecture pattern, has many different aspects which for themselves are already patterns. It is also found under the name of CQS (Command-query separation).

It is (for me) a totally different approach at saving data and retrieving it. There is much emphasis on the thought process and the domain model. The patterns starts with the user and his/her actions, not with data objects. These actions are translated into commands, which are processed and generate events. These events are basically incremental steps to changing the state of the database. They are saved in an append-only database, so they do not get lost. These events can then be used to update denormalized databases where the views are saved. That way you can get fast access to the data you want to display to the user. (See also the CQRS-Website from Gregory Young with a long introductory video, and an article byMartin Fowler.)

We looked at a small Example (quellcode), where you can see that it does not take much to apply this pattern

I hope that we at teamaton will try this architectural pattern out on a new coming project. I like it a lot, especially the focus from the beginning on a sophisticated domain structure.

At last a few smaller things I ran into at the Open Space:

  • As a developer you often come to point where you ask yourself: Should I use existing software or program it myself? We should try to estimate the costs without a bias towards self-development. We should try to analyze the existing software more thoroughly.
  • I would like to learn more about REST and RESTful web-services.
  • I will read through the articles on heise online “Clean Code Development in Brownfield-Projekten”:
  • If you start with a Brownfield-Project, you first should write acceptance tests.
  • I was not at the session about Software Craftsmanship, but I will look into this site:

Next year will be again a .NET Open Space in Leipzig: 20th and 21st of October 2012. Thanks for the Organization!

NET Open Space Organisators


Learning More about Project Management

by anton 7. October 2011 15:49

After listening to the interesting interview from Mark Phillips by Tim Keirnan, I wanted to jot down a few points which I think are important to us as teamaton.

  • Project managers are not only there to distribute tasks. They should understand the customer and his or her needs. Afterwards he has to define goals for the project, and translate these goals for the different groups involved in the project (designer, developer, tester). Only after that has happened, can he transfer these goals into tasks.
  • Most of the difficulties (80%) occur because they are weaved into the project from the very beginning. There needs to be a clear vision (definition is crucial) – otherwise there will be friction and competing visions.
  • Work expands so as to fill the time available for its completion. That rarely happens in our team. Our difficulties arise from not making estimates and not having a fixed point for completion.
  • Multitasking is not a good idea. One should concentrate on one project, instead of trying to push two, three or even more forward. If you have more than one project to work on, try to separate them (don’t switch during a day or even a week).
  • Projects should be prioritized. So when time is getting scarce you know which projects can be halted to free capacities.

After that I looked at the Theory of Constraints and the five focusing steps:

  1. Identify the Constraint:  We are now working more with Kanban, and are sure to see at which stage work is piling up.
  2. Decide How to Exploit the Constraint: We try to distribute the work according to the load. We try to let the developers focus on programming, because they are usually the bottle neck, and give their other tasks to someone else.
  3. Subordinate Everything Else to the Above Decision: We can be more effective in this step by defining precise priorities.
  4. Elevate the Constraint: We are thinking, for instance, about hiring a student software developer.
  5. If the Constraint Has Been Broken, Go Back to Step  1: We haven’t reached that step, but will keep that in mind – trying to better the performance of our projects.



Blogger: Choosing a Versatile Blogging Platform

by andrej 19. March 2011 21:50

An interesting information visualization video presents the possibilities of – the free blogging platform that comes to us via google.

We are currently testing for our todo management blog.

Here are the reasons why:

  • easy to setup
  • free of charge
  • you can map the blog to your own custom domain
  • it offers a content delivery system within the blogger community
  • easy to customize vs. Tumblr vs. Wordpress

For a another small mainly design related sideprojectI am currently testing the very popular tumblr platform. Why?

  • very easy to post
  • a very active community which promotes content
  • free of charge
  • possibility to map the blog to your own domain

Even though tumblr supports all kind of blog post formats (video, image, text, etc.) it seems to be targeted primarily at publishing images and short twitter-like posts.

We decided not to use wordpressprimarily because hosting it ourselves in a Microsoft environment is not straightforward. Alternatively you would have to pay a monthly fee if you wanted it hosted but mapped to your own custom domain. Feature- and usability wise wordpress was a very attractive candidate though.

Blogging and Content Management in and Orchard

For our other blogs however we use the primarily because at teamaton we use as our framework and we have more flexibility in implementing our own requirement within Also we stay in control of the content – even though not likely could be discontinued or have a breakdown loosing all your blog posts at worst.

Here are the blogs:

For our teamaton homepage and company blogwe are planning to use orchardproject. Which is a new open source content management system (cms) with blogging capabilities for using the mvc framework.


What blogging platforms are you using and what are your experiences? Feel free to post in the comments :)


Tags: , , , ,

BlogEngine.NET | blogging | software | | review | mvc

Agile – Last Man Standing

by anton 11. March 2011 11:51

We (teamaton) are beginning to develop a new web application, a ToDo-Management-Tool. It is our goal to be better at everything revolving around the process of developing this new application. Everyone at our company is diving into reading about and testing new tools and processes.

I took on the part of reading about different approaches to developing software, finding out about the pros and cons, figuring out which one probably suits best our needs, and gives us great power to develop the application effectively. I found the Wikipedia article on software development methodology, and went on from there to the different approaches.


Different Approaches



One approach is the Waterfall model, which is a sequential development approach with the following stages: requirement specification, design, implementation, integration, testing and debugging, installation, maintenance. This model assumes that all requirements are specified at the beginning. This is seldom the case.

There are many approaches which try to overcome the deficiencies of the Waterfall model. Seemingly all of them fall under the category of Software prototyping. Its main features are risk reduction, ease-of-change during the process, and involvement of the user.  For large projects some companies use Spiral model. Here the system requirements are defined in as much detail as possible to identify and resolve risks in the software development process. Our project is as yet not that large. Therefore we analyze risks only rudimentarily.

Rapid application development comprises many modern software development methodologies, like Agile software development, Lean software development and Scrum. The project is broken into smaller segments to reduce risk and provide more ease-of-change. Users are being actively involved in the process, and the software is build iteratively.


Iterative and Incremental Development Methodologies


Since requirements may change or the product owner may not now all requirements at the start iterative and incremental development methodologies are being used. The basic idea is to develop a system through repeated cycles of planning, design, implementation, testing and evaluation – and develop small portions of the software at a time.


One example is the Unified Process framework, which is iterative and incremental, use case driven, architecture centric and risk focused. Similar frameworks are the IBM Rational Unified Process and the Agile Unified Process.

Agile Development


Essentially we will use Agile software development. It allows for changing requirements, regular adaptation of the process, delivering working software frequently, getting feedback, and higher customer satisfaction. It promotes simplicity and trusting in motivated individuals involved in the process.


There is still much to learn about agile development. It is the superordinate concept for different software development methods like Scrum, Feature Driven Development, Extreme Programming. I will read about these in the near future. As a team we will need to adopt the mindset of agile development more thoroughly. The biggest mistake for teams using agile development seems to be to put implementation of the process over changing the way of thinking.


software development | methodology

Welcome to – A Blog about Growing a Web Application Business

by andrej 23. February 2011 10:44

At teamaton we are developing web applications – from very large to very small. As we learn a lot going along, we want to share that insights and knowledge on this blog.

Topics of this Blog

  • the business of building web applications
    • entrepreneurial design
    • strategy, markets, customers, potentials
    • financing, venture capital, bootstrapping
    • controlling and evolving a web app business
  • sales and marketing
    • our experiences with selling web application
    • how to market web applications
    • using social media
  • working as a team
    • what are our processes
    • product life cycle
    • development, design, administration and testing  methodologiepeople
    • people strategy: how do we make ourselves happy?

We hope that you will like our blog posts. If you have any suggestions on topics or have questions, feel free to comment or shoot us an email.

Tags: ,

business | web application

About the author

Something about the author

Month List