Time Machine and Dropbox saved the day

Friday was not a good day.  It could have been a whole lot worse though...

So I got to work and found my new T-Mobile usb umts stick waiting for me. Yah!  I didn't waste any time and unpacked it right away.  I plugged in the usb stick into my Macbook Air running Snow Leopard and the software installer appeared right away.  Very nice.  I installed the software and it worked like a charm right away.  "Not bad, T-mobile.", I thought to myself.  I was soon to change my mind though.

A few minutes later I wanted to rock out with a brand news rails project.  That, however, was not meant to be.  I ran a few commands in the open Terminal.  I tried to open a new tab and strangely, the prompt never came.  I closed Terminal and tried to start it again.  Nothing.  "Oh well." I thought.  "Time to restart the machine."

Hm... Why is my machine taking so long to restart?  Power down.  Try again.  Waiting... Waiting... With each passing second I was becoming more and more sure that this would not be a very productive work day.

Oh, crap.  I went home a little early that day and hooked my machine up to my external harddrive.  Since the Macbook Air doesn't have a dvd drive, I had made a Snow Leopard installer partition on my external harddrive.  I booted up the machine with that partition and in the utilities menu I tried to repair the drive using Disk Utility.  Restarted the machine.  Ughhh.  Didn't help.  Booted up again and this time I restored the entire machine from my Time Machine backup on the external drive.  I had another backup on my Time Capsule, but that would have taken significantly longer to restore over wlan.  

Ok.  After about an hour the restore was done.  This was the moment of truth.  Had my beautiful, new Macbook Air turned into a very light, yet expensive paperweight?  

...

Tada!  Time Machine saves the day!  Unfortunately, I've been gone the past few days for work and the last backup was 9 days ago.  I wasn't missing much but there were a few documents that I had created in the meantime.  Enter Dropbox.  All of my documents, spreadsheets and document scans are automatically backed up to the Internet by a magical little tool called Dropbox.  

Would Dropbox be smart enough though and restore those files I lost or would it just mark them as having been deleted?  Low and behold, Dropbox is not only super practical its also super smart.  It immediately began downloading the files that I had created in those 9 days that were missing from my Time Machine backup.  

Time Machine and Dropbox saved the day for me.  It took, all told, about 3 hours of work to restore all of my files and get my machine back up and running.  Without those two super tools, it would have taken me closer to 3 days.

As to what caused the blackout in the first place, I'm not 100% sure.  Either the T-mobile usb umts software bunked up my Snow Leopard royally or the SSD in my Macbook Air developed a back sector.  I'm hoping its the former.  Just in case, I'm not going to reinstall the T-mobile software on my personal machine anytime soon.  Before I do though I'm going to make sure I have a fresh Time Machine backup.

Austin

Book Review - Pragmatic Programmers - iPhone SDK Development 3.0

Hi iPhone developers,

I just bought "iPhone SDK Development" yesterday from pragprog.com, my favorite tech publisher.  After reading "Agile Web Development with Rails" from the same publisher, I had pretty high expectations for this iPhone book.  I'm sorry to say that I'm thoroughly disappointed.  Here's the problems that I have with the book.

* You can't program along with the book with downloading the example code.

The example code printed in the book is no where near complete.  If you try to programming along, you better pay very close attention and fill in the blanks yourself.  Just typing what you see will only get you compile errors.  Not only that, but I have the feeling that they even skip some of the necessary setup (e.g. database creation in the CoreData chapter).  

I understand that it might not be possible to create an entirely new application each chapter and still have all of the code in the book.  Then they should simply create a single application throughout the book and build upon it with each chapter.  Provide in the sample code, the starting point for each chapter if the reader wants to skip around.

* Too often I read, "We don’t have space to go into detail, but you can see ...".

Thanks a lot.  At least I now have a link to Apple's documentation, but the reason I bought the book is to have an expert walk me through the difficult problems.  If I just needed a bare bones tutorial for the absolute basics, I would have read Apple's documentation from the beginning.  Arghhh.

* Each chapter is one long code regurgitation.

Instead of breaking the chapter up into bite sized bits where I can check my progress every once in a while, this book is one long stream of code hurl.  You never know when you've just completed something you could build and test.  You never get any screenshots mid-chapter of what it should look like and what should work now.  By the time you've reached the end of the chapter, you've, of course, forgotten what you did at the beginning and what ui functionality maps to which bits of code.

* No chapter on unit testing.

Come on!  What is this, the 90's?  Earth to author, "Everyone should be writing automated tests, nowadays!".  Why did they leave out this extremely important topic?  They only have one single paragraph on the subject and there they simply link to the Apple "iPhone Developer Guide".  Super.

* No error handling or validation.

For a typical application, 20% of the code I write is to handle the success case and the remaining 80% is to handle when things go wrong.  The author not only has 0 lines of error handling and validation code, he even goes as far as deleting the xcode generated error handling (i.e. write to the log).  This is exactly the place where I need a book as opposed to an online tutorial.  How do I write a real application?  This book didn't answer this question in the slightest.

Its too bad.  If Pragmatic Programmers keeps publishing books like this they're going to lose a lot of their readership.  I know I'm going to be much more careful next time before buying a book from them.

Austin

Welcome contributors. Are you more the 'public' or 'private' types?

Hello to everyone who's just gotten an invitation from me to join this blog as a (potential) contributor.

 I know there's little content here at the moment, but I'd be glad to change that.

 Let me first ask what you would prefer for this forum. It should be in the form of:

 - a public blog as it is now, where only contributors can post
- a public blog that is moderated, but anyone can post
- a private blog "by invitation only" that is for your (contributors) eyes only

 I'm asking because I'm trying to find out what would be most fun for you. So please let me know via the comments.

 Thanks,
Florian

How to set up a GmbH in Germany in 8 steps - a rough checklist

How to set up a GmbH in Germany? It's easier and faster than we both thought. The first six steps took about six weeks, but we were not in a hurry. I guess you could speed up things a bit more. Here's what worked for us: 

1. Company name and corporate purpose:
Check both with your local Chamber of Industry and Commerce (IHK) and the company name additionally against the Commercial Register (Handelsregister) for existing companies. It is also a good idea to check your company name against national and international trademark databases. Postpone trademark filings until you have a final decision and logos. Don't forget to register an internet domain for your company.

German / EU Trademark search (example): http://www.markenschutz-online.net/?_kk=markenschutz
US Trademark database search: http://www.uspto.gov/main/trademarks.htm

2. Articles of Association (Gesellschaftervertrag / Satzung)
Get a notary that specializes in start-ups or corporate law. After a brief interview about the planned company you will get a draft of the Articles of Association (Gesellschaftervertrag / Satzung) from your notary. Modify the draft for your needs - consultation of a specialized lawyer is recommended. Calculate a few days (in our case about one week) for the back-and-forth until you have a final version.

If you first have to find a notary, google 'Notarkammer' for your local chamber of notaries. Here is the link for the Bavarian notary search: http://www.notare.bayern.de/front.php?katID=53&artID=467

3. Notarization (Beurkundung)
Notarization is easy and, well, relatively speaking, fun. Notary reads out loud the Articles of Association and the Founding agreement (Errichtung). You sign. Done. The notary will also prepare the application for entry in the Commercial Register and the list of partners. You will get your copy of the documents a few days later.

From now on you have a "GmbH in Gründung" (GmbH i.G.), also called "Vorgesellschaft" meaning a company prior to registration. 

4. Bank deposit (Bankeinzahlung)
With the (notarized) copies of your documents you can open a company bank account for deposit of the registered capital. You have to have a bank statement showing the paid-in amount of registered capital for the Commercial Register.

5. Entry in the Commercial Register
Your notary has the application 'on hold' until you send the bank statement. Afterwards, the application is submitted. You can expect the entry to happen within a few days. As soon as you get confirmation of the Commercial Register, your company is officially founded.

6. Registration of the business (Gewerbeanmeldung)
You have to register once more: as a self-employed person or persons if there are additional managing partners. The Registration has to be made in person at your local municipality.

7. Registration with the local tax office for a tax ID
This was done by our tax accountant, so I don't have too much details to share except that it is another multi-page form and the opening balance of the company was included in the application.

8. Registration of a Betriebsnummer (couldn't find a good translation)
Only if you plan to have employees, the Betriebsnummer is assigned by the Agentur für Arbeit for tracking social security payments.

Ongoing 'fun':
After registration with the local tax office you have to report monthly revenue figures for VAT prepayments to the tax office via ELSTER (www.elster.de)

And that's about it, I guess.

Have fun!
Florian

Next up - Checklist for the state subsidy for founders (Gründungszuschuss) in [large number of] steps

Disclaimer: 
If you are interested in founding a business you are a business man. And as that, you'll check the information given above yourself anyway. Please just keep in mind that our case might not match your special case. This overview is intended as a checklist of steps you have to take to get to the precious little world-dominating corporation you dream about. If you have any corrections or comments please let me know.

Welcome to Found!Blog

Hey there!

Welcome to Found!Blog

Thomas and I founded our very first little start-up company some weeks ago. Since we decided to become self-employed in early 2009, we met a lot of people with ideas on what we or they themselves could do as founders. And sometimes we could even get precious advice from senior entrepreneurs and specialists on how to do things. For sure, we got a lot of support and feedback from all different directions.

Now we think this blog could become a playground for you and us on everything you need for starting your own company. And on the even more subjects that come up afterwards. Let's discuss and perhaps help each other with our own ideas and opinions.

Not 'well structured' by purpose: let's simply find out where this goes. Contributors are most welcome!

Just mail your thoughts, ideas or questions on how to found your company to post@foundblog.posterous.com and we'll post them. Found!Blog is open for everyone but moderated (just to be on the safe side, hopefully no need to moderate anything).

Have fun and let your ideas stroll!

Florian