Business – Cocoanetics https://www.cocoanetics.com Our DNA is written in Swift Sun, 22 Apr 2018 13:25:14 +0000 en-US hourly 1 https://wordpress.org/?v=6.4.3 39982308 ProductLayer Post Mortem https://www.cocoanetics.com/2018/04/productlayer-post-mortem/ https://www.cocoanetics.com/2018/04/productlayer-post-mortem/#respond Sun, 22 Apr 2018 13:25:14 +0000 https://www.cocoanetics.com/?p=10563 In the beginning, there was an idea: To provide a web service for app developers that would let them get basic product information – like a title and category – for a product which they only have a bar code for. I imagined that this could be the basis for a plethora of niche apps, each serving a different kind of niche: keep track of your books, CDs, games. Keep your inventory current, never again miss some food expiration date.

I thought that many app developers would have many users and those users would then add products to the global database if they encounter one that couldn’t be resolved. Monetization would be done from app developers who had the most web API traffic and at a later stage from letting product manufacturers analyse the sentiment about their products.

Since I couldn’t do all by myself – being specialized in iOS apps – I pitched this idea to several of my friends. The first to believe in it besides me was René Swoboda who developed the entire backend for ProductLayer. While he was working on that, I tinkered on the prod.ly iOS app which I modelled after my favourite Twitter client.

Two more joined our team: Roland Moser as CEO and Werner Bayer as developer of the prod.ly Android app and also versed in the backend magic to give René a helpful hand.

I was supposed to find and “evangelize” developers who would use our API in their own apps. But it soon became apparent that very few people would buy into my vision of a “common good” product database. But we pressed on, working to release the first versions of prod.ly, hoping that some users would feel the need to share opinions (we called them “opines”, similar to “tweets”) about specific products, and in doing so help grow the database.

Unfortunately our prod.ly user base never really got off the ground. My girlfriend and René’s mom where the most faithful users besides ourselves.

Deus Ex Machina?

My second idea to grow the database was to employ machine learning to the problem. Couldn’t you teach an AI what pieces of information are relevant to understand what a product is? Along the lines of, if it is in a bottle it must be liquid. If it says certain words on the bottle – like “body lotion” – then it is probably not potable, but cosmetics. Very briefly we spoke to a guy who could have been heading this, but he and us couldn’t agree on a mode of compensation for him.

Next we started scraping a number of affiliate feeds and that got us really many products. Mostly consumer electronics gadgets because those are the ones that are sold most over the Internet. This grew our database to more than 6 Million products today. This is nothing to sneeze at. Although a slight problem with this approach is that every now and then one of the affiliate partners decided that they didn’t want us to have their data and so we were asked to remove their product photos.

Early on, my partners convinced me that we’ll never be able to charge anybody for API access, if we don’t first have the most complete database possible. So, if app developers wouldn’t be our paying clients, who would?

We talked to a few companies building cashier terminal and online shop software. But they took issue with many of our product pictures not being “originals” from the manufacturer or not having white background. Those you could only get from the manufacturers but not from our crowd taking “in action” snapshots of the products they were testing.

Authentic, True and Guaranteed, Not

Another hitch with people being at liberty to saying anything about products would be that bad products would carry bad comments and that would make it hard to suck up to the manufacturer of said product to provide more complete product lists and information to us.

In particular with foodstuffs it became apparent that certain critical information (like ingredients or allergens) would have to come from the makers of the products themselves, because legally they would have to be responsible for it being absolutely correct and true. I know of only one company which is trying to do that: GS1 International is working on a cloud/server-based solution which aggregates and disseminates “originally sourced” information about products. But of course that comes with a cost, nothing is free.

There’s another (kind of) competitor to us, who had the unfair advantage of a lot of funding: Semantics3. So far these guys raised 2.2 Million Dollars – and they do exactly two of the things I mentioned above: scraping affiliate feeds (and web pages) and using machine learning to clean up the mess into coherent products. At the same time they gather pricing information. They send out extremely annoying emails laden with animated GIFs touting the benefits of their services.

Well, I tip my hat to them, because they more or less achieved the vision I had, minus a simple free API for app developers. Oh well, they go where the money is, online commerce.

An Amazon-Killer?

Around two years ago, when it dawned on us that our investments of time and money wouldn’t lead anywhere, we came up with an idea for a potential pivot. Everybody is angry with Amazon, but nobody does anything against it.

The idea for REGIZON (a regional Amazon) would be to let small local brick&mortar shops list their products, prices and location in a very convenient way. Let’s say you quickly need a certain toner cartridge so that you can continue working today. You take to REGIZON’s friendly user interface and find that the shop down the street has exactly that in stock. So your feed do the instant delivery and you don’t have to wait. You benefit and so does the shop.

Again we pitched this idea to several big players in Austria, but we never got further than some initial excitement from potential investors. It seems every does agree that “something must be done”, but nobody actually does.

Why we Shut Down

Those 4 years of ProductLayer were not a total waste of time. We three software guys agree that it certainly benefitted our skills to have to keep up a service like this. There are many things in the API/SDK design and the iOS app which I am personally proud off and I am sure René and Werner can say the same thing about their areas of expertise.

We even had a hand full of actual developers doing product queries via our API. But having taken 4 years to make it to 4 API users is a very sad statistic. In the months leading up to our shutdown we even had to turn away one or two people who where hoping to use our API, one for research, one for an actual app.

However much we love ProductLayer, we cannot keep it running. The main reason being that it costs time and money to maintain our redundant servers. We simply reached the end of our initial funding of 10k Euros and nobody is willing to keep putting down additional funds to keep our hobby alive and going. We were quite frugal dare I say?

At the same time this hard funding limit kept us from making a bigger mistake. If we had invested more, then our loss would probably have been much greater. As we see it now, there was no market receptive to our ideas. Let alone one that would pay us for them.

Conclusions

I’d say my own personal learnings are those:

  1. You need to fail fast and be able to quickly determine if an idea has a potential for paying clients.
  2. There is a very real danger that if you invested more than required by a minimum viable product, that you fall prey to the sunk cost fallacy.
  3. Trying to build a platform requiring extraordinary amounts of users to work is futile.
  4. You need to be able to afford investing time and money into something that is likely to fail. Better to be doing that on the side or as a hobby.
  5. You will see your own passion for an idea evaporate, once you have commitments.

We cloned our system in a virtual machine, so that maybe one day somebody could make use of the product data we collected. I was the former chief (and only) Evangelist for ProductLayer. You may contact me by email if you have any questions.

]]>
https://www.cocoanetics.com/2018/04/productlayer-post-mortem/feed/ 0 10563
Back to Square Two https://www.cocoanetics.com/2017/10/back-to-square-two/ https://www.cocoanetics.com/2017/10/back-to-square-two/#respond Mon, 02 Oct 2017 09:28:26 +0000 https://www.cocoanetics.com/?p=10511 When I started blogging on Cocoanetics.com in early 2009, I had been dabbling with iOS development for little under a year. That was the same time when I turned full-time, when my prior employer decided to have someone cheaper doing my job (Windows PC Helpdesk). This initial blogging frenzy was the way most of my clients found me, both for components as well as custom app development.

In April 2012, Stefan Gugarel joined my company, as a Junior Developer. For exactly five and a half years his main responsibility was to keep my US-based client happy and did a great job at this.

When Stefan started with us, I was still living and working in Weistrach, about an hour away from his place of residence. We were sharing an office at my former brother-in-law’s, so we could huddle together over difficult issues. After my divorce, I moved further and further away, first back to Vienna (2 hours) then to Hainburg (3 hours). So we had to switch to pure remote working.

Remote Tools

We took to Google Hangouts where we met and screen-shared for challenging problems. Every day between 9 and 10 we did a longer session to keep in sync. Every few months I would book a small conference room in Vienna where we could meet in person. We used Slack for group-messaging and communication about issues related to software we had in GitLab issues.

I have to pay Stefan a big compliment that I found him to be largely self-sufficient. I attribute this to him working full-time for my client. Whatever you do most of your time, you get good at.

Having Stefan take care of the day-to-day “grunt work” allowed me to dig into the more advanced and esoteric techniques. It gave me the freedom to write Barcodes with iOS.

More Colleagues

In 2016, I hired two more guys, but with much less stellar results. One guy was a former friend pretending to work on growing my business, when he was really working only for himself. We parted ways after a mere three months, only to meet again in court, where was suing me for overtime payment.

The other guy, coming from a web background, told me that he wanted to become a great Swift developer. He had a great start and got into it really quickly. But after only a few months he decided that he didn’t want to be employed after all and resigned.

Then there was an intern, who didn’t cost me anything while I tried to give him some basic tasks to execute. So for a very short we were having hangouts with 5 people in total.

Having to keep track of working and project times made it necessary for me to subscribe to the timr time tracking system. It’s a web-based system made by fellow Austrian company troii. I was still doing the billing with Billings Pro, but moved also my personal project time tracking to timr.

Economic Downturn

Summer supposedly is a slow time in various industries, but I had never consciously experienced that.

Until 2016, when suddenly several of my clients told me that they needed to cut back on development expenses. For a short while we pondered the possibility of piecing together Stefan’s work from multiple projects, but after many years of focussing on a single client this felt like an unsatisfactory compromise.

It was my blessing that Stefan went looking for a new employer. It so happened that troii was both located nearby but was also looking for an iOS developer to work on timr.

Isn’t it curious how the ideal constellation for Stefan materialised itself so easily? I guess that must have come from all the good karma that he had collected working for me.

Conclusion

During all those turbulences, Stefan proved to be the most stable, trustworthy and loyal employee I’ve ever had. During his 5.5 years of service he grew into a world-class Senior Developer. It makes me very happy that we was able to quickly and painlessly find the next step in his career and I wish him all the best moving forward.

For me, this change means that I will have to adapt. Business looks to be better than ever before, but at the same time my time is more constrained by responsibilities that come with building a house. But when you are self-employed this is a problem you want to have: more well-paid work than you have time for.

]]>
https://www.cocoanetics.com/2017/10/back-to-square-two/feed/ 0 10511
Coach or be Coached https://www.cocoanetics.com/2017/06/coach-or-be-coached/ https://www.cocoanetics.com/2017/06/coach-or-be-coached/#comments Thu, 29 Jun 2017 12:29:06 +0000 https://www.cocoanetics.com/?p=10498 About a year ago, I got contacted with an unusual request: how can users with iPhone to participate in WebRTC video conferences?

All other desktop browsers  already did support WebRTC, and Safari on Mac needed a plugin for it. But Mobile Safari never supported Flash or any other plugins. But I knew how to achieve this and this resulted in the development of the Klickerr.com app.

Since Klickerr.com launched today, I would like to tell you something about it. Besides the question how I solved the riddle, you might like it as way to offer coaching services for pay to an international audience. Or you might be interested in learning new skills from international experts.

On Klickerr experts in a wide variety of topics offer their services via video conference. Experts can offer their services in all languages they can speak. They can specify a topic, a duration between 5 and 90 minutes and a price between $5 and $1000. Klickerr keeps a small percentage of that and the rest is paid out to the expert.

Be it that you want somebody to critique your yoga postures or you need marketing advice. Be it that you want to understand some area of physics or deepen your programming skills. Klickerr will have you covered … when enough experts have listed their services. Of course, I was the first to add something to the Technology – Apps section.

As a service provider – I prefer the term “expert” – you can specify at what times you’d be available to be booked. Clients send an inquiry for a specific service and time. If the provider accepts then the client has to pay in advance for the service. Then all that remains is for both parties to meet in a private chat room and commence the session once the scheduled time arrives.

As an expert you probably want to have the session on your Mac and in Chrome, because there you have a built-in camera and the ability to share your screen.

WebRTC on iOS

As a fresh startup Klickerr needed to have their platform first solely on the web. As alluded to earlier, most desktop web browsers already support WebRTC natively or via plugin. But how did we get iOS to play with that?

The answer is a combination between universal links and an iOS WebRTC SDK. Users can do all the session initiation from Mobile Safari, but when it comes to starting the video conference the link leads to a different sub-domain which is set up in the site’s app association file as being representable by the iOS app.

The process is explained in-depth by this talk I gave in 2015. At this time my experience was with integration the prod.ly site and app. But having researched this a year earlier was the basis for the approach I suggested to Klickerr.

Tapping on the session link opens the app which you needed to have installed before hand. If you haven’t installed it yet, the universal link opens from the web server and there you find a smart app banner and instructions on how to install the iOS app. The universal link contains all information to hand over the video conference to the iOS app.

From WWDC 2017 we know that some form of WebRTC- support is coming to Mobile Safari, but the current solution via app makes Klickerr available to everybody on iPhones and iPads right now.

Some Mild App Review Trouble

The app does not do anything if you don’t open it via universal link. So we only show a label that no session is currently active and that the user should go to klickerr.com to start one. I had a simple openURL to leave the app and go into Mobile Safari.

App Review didn’t like that, referencing “Section 4 – Design Preamble” from the App Review Guidelines.

We noticed that the user is taken to Safari to sign in or register for an account, which provides a poor user experience.

They kindly provided us with this advice:

To resolve this issue, please revise your app to enable users to sign in or register for an account in the app.

We recommend implementing the Safari View Controller API to display web content within your app. The Safari View Controller allows the display of a URL and inspection of the certificate from an embedded browser in an app so that customers can verify the webpage URL and SSL certificate to confirm they are entering their sign in credentials into a legitimate page.

The openURL was easily replace with a Safari View Controller. Once I had submitted this update, version 1.0 passed and got approved.

Some time passed and we did some UI improvements all around the app. This update was rejected for a different reason, referencing “Section 4.2 – Design: Minimum Functionality”.

Your app provides a limited user experience as it is not sufficiently different from a mobile browsing experience. As such, the experience it provides is similar to the general experience of using Safari. Including iOS features such as push notifications, Core Location, and sharing do not provide a robust enough experience to be appropriate for the App Store.

One several occasions I had stressed the fact that Mobile Safari was incapable of WebRTC and therefore the app was providing functionality that a web site couldn’t on iOS.

I couldn’t believe that Apple wouldn’t understand this distinction, I even offered to remove the link to Klickerr.com or the Safari View Controller because those were the only way how you could assume that the app was a repackaged version of the website. This went back and forth about 5 times with 2 new submissions that also got rejected with the same reasons.

I was at the end of my wits, but in the end the response offered:

Please let us know if we misunderstood your app, please let us know. So we can set up a phone call to understand your app.

Three days later I got a call from the United States, while flying with my drone next to a wind turbine. Once I had landed it, I explained to the friendly app reviewer why this app was necessary for users to be able to participate in Klicker. The worst case scenario would have been that would have to go live with the previously approved 1.0 version which would lack the improvements I had made, but would technically be functional.

After a bit of explaining, imploring and some mild begging, the reviewer agreed to grant us a one time exception. We would get the update approved, provided that the next update would contain functionality so that users could launch video sessions from within the app.

App Reviewers are Human, too

The learning from this episode was this:

  • if you are trying something new where you don’t know that Apple would approve it, make a minimum viable first version and see if Apple approves this. You can hold it back from being published if they approve it outright, but you gain valuable insight.
  • if you don’t seem go get anywhere by responding to messages in Resolution Center, then ask for a phone call to explain in person. Having to dedicate some time for a conversation with another human being might cause the app reviewer to be more receptive to your explanations and special circumstances.
  • reviewers have the Guidelines, but have some liberty to interpret these. Sometimes you can be successful by explaining how a slightly different interpretation chimes better with the rules and cause the coveted approval to occur.
  • it goes without saying that you should be polite, appreciative of being granted a conversation and respectful. You can catch more flies with honey than you can with vinegar.

Conclusion

I think the idea behind this platform is great. Google tried something similar in 2013 – limited to native English speakers in a few countries – but they ceased 2 years later, because it didn’t grow at a pace they had wanted to see. The service offered by HackHands might be seen as similar, but this service is driven by clients seeking help for specific topics with a sort of auction system for finding a provider and exclusively for programming topics.

The iOS app I built for Klickerr is only a small part of the entire platform. Nevertheless I would like to see it flourish and become the place to go for one-on-one expert advice, if only to know that had a small part in it.

Please check out the Klickerr.com website and if you feel like you have some coaching in you, list your services! Or maybe pass on the word about this being launched.

 

 

 

 

 

 

 

 

]]>
https://www.cocoanetics.com/2017/06/coach-or-be-coached/feed/ 1 10498
Day of the Day https://www.cocoanetics.com/2016/01/day-of-the-day/ https://www.cocoanetics.com/2016/01/day-of-the-day/#respond Sat, 02 Jan 2016 12:13:50 +0000 https://www.cocoanetics.com/?p=10036 Barcodes with iOSManning offers three books (including mine) as Deal of the Day, for January 2nd. Here’s your chance to get a great deal on several great books!

Use promo code dotd010216au to get 50% off any of these books.

]]>
https://www.cocoanetics.com/2016/01/day-of-the-day/feed/ 0 10036
Growth Spurt https://www.cocoanetics.com/2015/12/growth-spurt/ https://www.cocoanetics.com/2015/12/growth-spurt/#respond Sat, 19 Dec 2015 19:02:52 +0000 https://www.cocoanetics.com/?p=10001 In January 2016 the Cocoanetics blog as well as my iOS development business will exist 7 years. The business entity behind it – Drobnik KG – existed for twice as long. At the end of 2015 there will be several fundamental changes.

I had founded Drobnik KG together with my brother and father as holding company for our real estate. The idea for that I had gotten from Robert Kiyosaki’s books Rich Dad Poor Dad and Cashflow Quadrant. My father was running the business and insured a nice and steady growth.

7 years ago I started with iOS development, soon after the first iOS SDK was released. I published some apps of my own and also started taking on contract work. The basis of my income however was formed by selling closed source components. During this time I grew my revenues in leaps and bounds until at the end they were on par with the real estate income.

Most notably we become iOS development partners of ELO Digital Office in Germany and International Color Services in USA. For both we are to this date acting as the external iOS development department. Two of my colleagues have a full time job from that. I like to be jumping around and tackling new challenges where they might present themselves. On a recent project I took on the tasks related to architecting an API and SDK, senior developer stuff. Having a blast.

The Big Change

By the end of 2015, we had sold all our real estate at a profit. My father/CEO passed his 74th birthday  this year and goes into his well-earned retirement. I am stepping up from being a limited partner to being the new CEO and majority stakeholder. For legal reasons – to keep a limited partnership intact – I am keeping my brother with a minority share in the company. As I’ve learned from earlier dealings with Apple, you cannot form a company with yourself.

As of 2016, Drobnik KG will basically be me and the people who work for us. When we formulated the new company contract I decided to have these three focus areas:

  1. Software Development
  2. IT Consulting
  3. Dealing in Hard- and Software

At first I was tempted to drop everything and only do iOS development, but the advice of the notary was to formulate it a bit more broadly. So I picked these three areas which sort of fit together.

Cocoanetics – as the brand name under which everybody knows me – keeps growing in fame and does our notoriety amongst Austrian companies in need of iOS app development. Several times a month we are getting contacted by companies who would like to subcontract me – personally – out to larger clients.

There is a definite increase of such contacts, but the time I have for actual development work shrinking all the time. Which leads me to the conclusion that I could do either of two things: I could sign up for several-month-long contracts and make good money doing all the work myself. Or I could increase our human resources.

For a while I was leaning toward the option that would allow me to lean back and just rake in the cash. But that’s not how I work. I am happiest if I am in the company of smart people whom I can teach the trade, whom I can mentor and who I can care for. I had learned from of Robert Kiyosaki: I want to be a business owner, not merely be self-employed.

Careers at Cocoanetics

The next question I get asked a lot: remote possible? Contracting?

Well… I don’t see that feasible. At contractor – by definition – does not work with the vision I have of having smart people around me. Also some of my clients are local to Austria and require that we sit down with them regularly. Also I don’t see my mentoring skills really working remotely over Skype.

There are people – who I admire greatly – who pulled off the virtual company. But we are virtual already! Both “my guys” are closer to the center of Austria, near Linz, whereas I am working in the capital Vienna. This mostly works because both of them have ownership of the big projects we run for our clients. With one of them I am on a project together at the moment and he’s coming by railway to Vienna about once a week just so that we can synchronize.

So the point is: remote only works if I can have you work on the project by yourself because you have my full confidence that you will make the client happy. But here we have a chicken-and-egg problem: As an experienced developer you probably have the skills, but you would be costing me too much for it to be economically feasible. As an inexperienced developer you need my guidance and help, and for that we need to be seeing each other regularly.

At this point I am willing to start expanding the team, but only by Junior developers. And only by people who are close to Vienna. For the first few month it will have to be a local job and as your skills grow you can be more and more independent. In the long term you might be able to be take on external client projects around central Europa, where you would be on-site for months at a time. Mid term we probably can reduce face time necessary to occasional visits. But short time, we need to work together.

We have a so-called Collective Agreement that governs the salaries for employed developers in Austria. So even as a Junior Developer you would get remunerated quite well. But I can only employ people who are legally able to live and work in the European Union. Or Interns. There the laws are less stringent as far as I know.

Personally, I don’t put much stock in formal IT education. I am looking for bright individual who possess the mental make up necessary to be happy developing software. I am more impressed by good abstract thinking skills, mental flexibility and if you quickly grasp complex and new concepts.

You know how to get in touch, the infos are all there. If you can see yourself living in the world’s second most-beautiful city, Vienna, and love to develop iOS apps, then we should talk.

]]>
https://www.cocoanetics.com/2015/12/growth-spurt/feed/ 0 10001
Deal of the Day https://www.cocoanetics.com/2015/11/deal-of-the-day-5/ https://www.cocoanetics.com/2015/11/deal-of-the-day-5/#respond Mon, 02 Nov 2015 18:01:04 +0000 https://www.cocoanetics.com/?p=9954 Manning offers three books (including mine) as Deal of the Day, for November 2nd. Here’s your chance to get a great deal on several great books!

Use promo code dotd110215au to get 50% off any of these books throughout July 28th.

This book took up the better part of 15 months to polish into the only one its kind. It just might be the very first vertical tech book.

I am not referring to the way how you would place it on your shelf. A horizontal book typically would only cover one technology layer. A vertical book, like this one, slices through multiple technologies that are to some degree connected to barcode technologies. Using barcodes as a common theme, it introduces several other technologies which complement barcodes nicely: RESTful web-services, OAuth, iBeacons, Core Location, NSURLSession, MapKit, Core Image, AVFoundation and many more.

You also get a €150 value included for free with this book: you get a free license to use BarCodeKit, the only modern framework for generating 1D barcodes on iOS and OS X.

I’ve been asked if this book has lost some of its relevancy due to the growth of Swift. To this I can say “certainly not!” because all of the presented concepts work seamlessly in Objective-C and Swift. Also, most of the sample code is already available in Swift on the public GitHub repo.

Besides the book’s homepage on Manning you can also get the book:

So, if you haven’t done so yet, please pick up a copy!

Barcodes with iOS

]]>
https://www.cocoanetics.com/2015/11/deal-of-the-day-5/feed/ 0 9954
FOKUS KIND Medien acquires iWoman https://www.cocoanetics.com/2015/06/fokus-kind-medien-acquires-iwoman/ https://www.cocoanetics.com/2015/06/fokus-kind-medien-acquires-iwoman/#comments Tue, 02 Jun 2015 10:50:02 +0000 http://www.cocoanetics.com/?p=9635 Drobnik KG and FOKUS KIND Medien, Austria – We are announcing that effective June 1st FOKUS KIND Medien has acquired the iWoman iOS property.

iWoman is a simple and intuitive app for women to keep track on their menstrual cycle. In-app purchases add the ability to keep track of sexual intercourse, daily basal temperature measurements and to have the data passcode protected. iWoman was the first app Drobnik had published on the app store in late 2008.

iWoman IconOliver Drobnik, founder of Drobnik KG and Cocoanetics.com shared this history of iWoman:

“I built the first version of iWoman mostly as an exercise to learn Objective-C in 2008. It was actually the second app I submitted to the app store. The first was DropClock which would measure vertical distances by letting people drop their iPhone onto a soft pillow. But – for some weird reason – Apple never approved this app. 🙂

iWoman was an overnight success, for a long time ranging amongst top sellers in the health & fitness categories. Two years later, in late 2010, iWoman 2.0 brought much exanded functionality, in-app purchases and a complete visual redesign. In retrospect, iWoman proved to be a good commercial success in the long run, netting sales of $48.K ($32.9K after Apple’s share) over its 8 year life span so far.

Unfortunately the sales were spread out over so many months that I didn’t ever have the resources available to keep iWoman current and fresh. Because of this no updates were made since Summer 2012. This was always been a chip on my shoulder. On one side I was emotionally attached ot this app being my first published one, on the other side I needed to make a living and could not take care of my baby.”

FOKUS KIND Medien is the Austrian online publisher with the widest national reach on the topics of pregnacy and baby rearing. In Austria, it is well-known for maintaining popular websites Schwanger.at, Babyforum.at, KindAktuell.at and many more.

Stefan Eipeltauer, CEO of FOKUS KIND Medien said about the acquisition:

“We are excited to pick up this app which perfectly fits into our portfolio of pregnancy-related mobile apps. We will continue to work with the previous owner to fix some pressing bugs and – later this year – overhaul the UI to give it a more modern feel. Cocoanetics has proven to be a great software development partner and we are looking forward to working with them on this and other apps.”

iWoman is the second app which Cocoanetics was able to place with a new owner, the first one being Linguan which was acquired by Peer Assembly in late 2013.

]]>
https://www.cocoanetics.com/2015/06/fokus-kind-medien-acquires-iwoman/feed/ 8 9635
Make Money Socializing https://www.cocoanetics.com/2015/04/make-money-socializing/ https://www.cocoanetics.com/2015/04/make-money-socializing/#comments Wed, 01 Apr 2015 07:21:59 +0000 http://www.cocoanetics.com/?p=9559 Here’s a press release I’ve been working on. Awesome announcements from our startup ProductLayer!

Vienna, Austria – ProductLayer announces that today, April 1st, the share holders are signing the papers of incorporation for ProductLayer GmbH. Additionally a customer reward program is announced that changes everything you thought you knew about social networks and gamification.

Users on prod.ly, ProductLayer’s social network around physical everyday products earn points for activities which contribute value to the network: completing product information, uploading product photos, sharing opines and voting on products. Today the company announces that from now on all points will be convertible in cash.

ProductLayer’s Chief Developer Evangelist Oliver Drobnik says:

“Traditional gamification systems try to make users do something that is in their interest by creating a fake social pressure to use their systems. This essentially makes their users slaves to the cause.

We believe that by giving all points a real money value users will no longer feel cheated out of their share of earnings. Rather, we see our users as partners in our business. We need them to grow big and want to reward the users with money.”

ProductLayer’s Chief Executive Officer Roland Moser coined the phrase “Reverse Kickstarter” for the scheme:

“Traditional Kickstarter works that users pre-order a product, which gets made and having a product causes the kickstarting company to be funded because it is now worth something.

We are reversing the process: Users use our product prod.ly first. The more users we get the more valuable our product – and thus ProductLayer – will become. When we then get big funding we are going to distribute part of the venture capital according to point values earned by the users”.

Effective today the prod.ly iOS app has been updated to show the monetary amounts users have accrued so far.

prod.ly with Money

Sign up for a free account via the iOS app and start making money by sharing your everyday product interactions with the world. Social networking has never been as lucrative before.

Update April 2nd: April Fools! ProductLayer GmbH was indeed incorporated today and prod.ly is for real, too. The only hoax was the display of money values instead of point scores.

]]>
https://www.cocoanetics.com/2015/04/make-money-socializing/feed/ 4 9559
Years of Barcodes https://www.cocoanetics.com/2015/02/years-of-barcodes/ https://www.cocoanetics.com/2015/02/years-of-barcodes/#respond Fri, 27 Feb 2015 16:14:57 +0000 http://www.cocoanetics.com/?p=9485 My last 15 months had a common theme: barcodes. At this point all my research, coding and writing is finally allowed to move into the public sphere, plainly visible for all who care. And incredibly interesting for those who don’t just yet.

I’ve always believed tackling a topic from many sides at the same time. When I began researching the barcode APIs which Apple had added in iOS 7 I found several other areas starting to move as well.

Besides the book contract – which I am obliged to mention to you as often as I can – I started to research the connection of barcodes and product information. First I implemented an interface for retrieving product titles from Amazon Product Advertising API, later being stumped by the licensing terms which prohibit use of this data in mobile apps.

This misadventure caused me to form the initial seed for a platform that would allows us developers to make apps using barcode scanning and getting product names. The first name I had for it was P-API, as Product API, but somebody in the US of A convinced me that this would be a bad name. Then somebody suggested – akin to how Foursquare was previously described – “the missing Product Layer for the Internet”. And so ProductLayer was born … in spirit.

Then in the fall of 2014, my book was more or less feature complete, I spoke about these barcode entanglements at Cocoaheads Krakow. If you haven’t seen it yet, please watch this 15 min video where I explain my book and some basics about barcode technology. It might be a couple of months old, but its still as relevant as ever.

A nice talk, if I dare say so myself. 🙂

Speaking of which, I held two hour-long talks at Mobiconf 2014, one of them also giving a great overview of what you need to know about barcodes as an iOS developer. At the time of this talk, development on the ProductLayer backend – done by my smart partner René Swoboda – had been going on for several months already.

My idea had been to collect e-mail addresses of developers with a teaser page and we collected about 400 addresses, but for reasons I cannot fathom nobody stepped forward wishing to trust upon our platform. So my partners and I decided to go ahead and produce the first app ourselves.

I am quite active on Twitter and every time I see something interesting I would tweet a statement about that, sometimes include a picture. When doing that about new products you are interacting with we felt that you want to share your notions about a specific products with the entire world… or at least your close friends on various social networks.

Prod.ly

This is prod.ly. A way for you to “opine” about specific products and share your micro-product-stories with your friends, wherever they are: on prod.ly, on Facebook or on Twitter. With more social networks to come. This is main benefit number 1: post once, and many people see your opinion about a specific product. Benefit number 2 are product lists: think Amazon wish list, but under your control. You can create lists of a number of different uses and any app using the ProductLayer platform can be authorised by you to access these lists.

I created the official prod.ly iOS app in about 3 months and at the time of this writing it is under review by Apple. At the same time, over the course of almost a year I worked on the ProductLayer iOS SDK, all open source on GitHub. This has matured to version 0.4 which I feel is stable enough to now try and convince you to use it. That’s my other hat at ProductLayer, I am the Developer Evangelist.

BarCodeKit

One of the prerequisites of the barcode generation chapter in my book was the ability to create 1D barcodes. After finding that there was no “proper, modern” framework that would allow me to do that, I started my own, dubbed BarCodeKit. Several awesome volunteers contributed and added new supported symbologies. I am sure, if there was no BarCodeKit, there would not be a book.

Since I got started on my book, I wanted to give owners of it a goodie: a free commercial development license. Own my book and you have a free license. Don’t own a copy, you have to pay 150 Euros. I figured that this would be a no-brainer. Would you rather pay around $30 for book and BarCodeKit, or 150 Euros for only the license?

Moving Public

In the many months of working on the book I had 2 sales of such a paid license. So I today I decided to move the BarCodeKit source from my private GitLab repo into public view on GitHub. The potential benefits of this source code being public by far outweigh the potential loss of 1 sale per year.

Barcodes with iOSThe sample code for my book was also in my private repo and we published ZIP snapshots on manning.com. Geoff Breemer awesomely (and painstakingly) converted most of the Objective-C sample code into Swift, so you can see how the sample work in both languages. That’s also now on GitHub. You can still get the source via Manning, but I am certain I don’t need to spell out the benefits of interacting with the code (and me) on GitHub.

Conclusion

At this point several threads in the fabric of my developer life are now joining into a beautiful tapestry, one that it also no longer hidden from the public.

I encourage you to pick up a copy of my book to learn about the great potential that barcodes are holding. I have been working very hard to make it as plain as day for you to see that there are awesome new app opportunities for you. All you need to do is build them.

Trust me on this one: my occupational hazard is that now I see barcodes everywhere I look. Each crying out to me “there should be an app for that!”

]]>
https://www.cocoanetics.com/2015/02/years-of-barcodes/feed/ 0 9485
Deal of the Day https://www.cocoanetics.com/2015/02/deal-of-the-day-3/ https://www.cocoanetics.com/2015/02/deal-of-the-day-3/#respond Sun, 22 Feb 2015 17:13:52 +0000 http://www.cocoanetics.com/?p=9475 Manning offers three books (including mine) as Deal of the Day, for February 22th. A new chance to get in on a sweet deal!

Use promo code dotd022215au to get 50% off any of these books throughout February 24th.

This book took up the better part of 15 months to polish into the only one its kind. It just might be the very first vertical tech book. I am not referring to the way how you would place it on your shelf. A horizontal book typically would only cover one technology layer. A vertical book, like this one, slices through multiple technologies that are to some degree connected to barcode technologies. Using barcodes as a common theme, it introduces several other technologies which complement barcodes nicely: RESTful web-services, OAuth, iBeacons, Core Location, NSURLSession, MapKit, Core Image, AVFoundation and many more.

You also get a €150 value included for free with this book: you get a free license to use BarCodeKit, the only modern framework for generating 1D barcodes on iOS and OS X. Regardless of where you have gotten your copy of Barcodes with iOS from, please go to your Amazon.com site and drop me a short review. This is invaluable so that people can know what they are missing. 😉

To get the word out about the recent paper-version release we are interested in finding a couple of people review the book on their blogs. We’d be happy to supply free copies for this purpose and also a couple for giveaways. Email me if you have a blog and are interested in this promotion.

Barcodes with iOS

]]>
https://www.cocoanetics.com/2015/02/deal-of-the-day-3/feed/ 0 9475
Book, out https://www.cocoanetics.com/2015/01/book-out/ https://www.cocoanetics.com/2015/01/book-out/#comments Thu, 22 Jan 2015 08:27:02 +0000 http://www.cocoanetics.com/?p=9438 We are happy to announce that my book Barcodes with iOS is out now. The final PDF edition arrived January 21st in the inboxes of people who had pre-ordered via the Manning Early Access Program (MEAP).

Update Jan 28th: Received my author copies. Added photo and unboxing video below.

You can order it on Manning.com (50% off with discount code mldrobnik) or amazon.com or – if you are in Europe – you might prefer Amazon.de. Either way is fine… as long as you buy a copy! 🙂

Barcodes with iOSMy journey started in October 2013, when writing started. This being my first book, I needed to learn a few things before I was ready to make my debut as author.

With the first 3 chapters complete the manuscript was sent out to 10 industry experts who should comment on the quality and give an Amazon-style 5-star rating. It came out at a whopping 4,2 Stars. This caused the book to be green-lit of the preorder program.

The MEAP for the book started in March 2014. The first few chapters were accessible in raw form, as I submitted them to my Developmental Editor. Who preordered the book got to see all chapters as I handed them in, but without all the polish and editing that would follow.

In the following month I had worked reviewer’s suggestions into the manuscript and so we updated the 3 available chapters. This feedback was invaluable because in particular the chapters less directly related to barcode scanning needed some direction.

In May 2014 we already had 5 chapters ready. The first 3 chapters got locked for pre-production at the same time. This meant that I shouldn’t edit them any more but leave this to editing and graphical professionals.

On the last working day of May I handed in the final chapter… or so I thought. Mid of June was WWDC time and Apple released iOS 8. Besides removing the “7” from the book title I needed to go over all chapters and insert information about changes that would arrive with iOS 8 in fall 2014. The complete and iOS8-updated manuscript was on the MEAP on July 8th, a mere month after WWDC.

At this point a second round of reviews happened for chapters 4-7. This time I improved my “how would you rate it on Amazon score” to 4,6 stars on average. I call this a good basis for the polishing that would follow.

Publishers call the time when you are writing “pre-production”. As soon as you lift your fingers from the keyboard the book enters the “production” stage. Then the experts really take over. A tech proofer goes over your source code and technical details with a fine tooth comb. A native English speaker adjusts your language to sound native, too. A graphical designer takes your Omnigraffle vector art and adjusts it to fit the usual Manning style.

A seemingly endless back-and-forth ensued where you have to answer around a dozen or so Author Questions (AQs) to clarify something to the editors. The most painful part was editing the index. I had my mind set on grouping all Objective-C symbol names by prefix and add a description to all, like if it is a constant, a function, a class or a method. My editor patiently implemented all my change requests, until finally on January 9th she wrote:

I got these changes marked. Can you believe you’re ready to publish?! I’m sure it seemed like you’d wait endlessly 😀

This day the book went to the printing presses. So now we know that it takes about 3 weeks to produce physical instances of my Book class.

Acknowledgements

The final part you have to deliver, after most of the editing is done, is the so-called Front Matter. Amongst these brief sections which are near the front cover there is also a section where I get to thank people. To make sure that my thanks are seen by the maximum number of eyes, I’m reproducing this section here:

I am thankful to …
Erica Sadun, who—four years ago at a developer conference in Seattle—put the notion into my head that someday I could be a book author too. When I got the opportunity to provide technical feedback for several of her books, I found that my commentary was both welcome and highly relevant. This has inspired my writing ever since.

Scott Meyers, for asking me on behalf of Manning if I would consider writing a book. He supported my idea of writing a “vertical book,” slicing through several different technologies, as opposed to writing a “horizontal book,” covering only a single technology. I could have chickened out at several points before we signed the book contract, but Scott’s trust in me—which was entirely based on a few blog articles I had sent him as samples—kept me in the game.

Bert Bates at Manning, who taught me how to shift from writing blog articles to designing instructive book chapters. I had arrived at my own “tutorial style” over several years of writing blog tutorials at cocoanetics.com, and initially there was doubt that my style would work for a Manning book. Bert believed in me and convinced the powers that be that my style was perfect for an advanced-level Manning book. He also gave me a ton of instructional tools that I am using to this day, even in blog posts.

Sean Dennis, my development editor at Manning, who guided me through giving the book a professional structure and feel. Often he would play dumb and nagged me to explain something better. At first I cringed, but after having made the changes, I always found that Sean’s suggestions had made the book much better as a whole. It was also Sean who suggested I use Discogs for the networking chapter’s sample app, being an audiophile himself.

The people who contributed to BarCodeKit: Andy Qua, Jaanus Siim, Brendan Duddridge, and most importantly Geoff Breemer. BarCodeKit is the key ingredient that made chapter 5 possible. I also thank Geoff Breemer for migrating this book’s sample source code to Swift. This book’s code listings are all in Objective-C, but because of Geoff’s work you get the free bonus of seeing how it looks in Swift, too.

All the other people at Manning who helped polish this book into its published form, in particular Andy Carroll, my copyeditor, and Katie Tennant, my proofreader, for making me sound like a brilliant native English speaker. Also my technical proof-reader, Gregory Hill, for helping me eliminate several embarrassing mistakes in the source code.

The following reviewers, who read the manuscript at various stages of its develop- ment and who provided invaluable feedback: Arif Shaikh, Brent Stains, Chris Davis, Emre Kucukayvaz, Gavin Whyte, Jim Amrhein, Jim Matlock, Johan Pretorius, Mark Janssen, and Subhasis Ghosh.

René Swoboda and Roland Moser, who believed in me when I pitched them the ProductLayer.com product information service for a startup, the idea for which came to me as a result of researching barcodes. Their enthusiasm made me realize that I wasn’t alone in my vision: mobile apps that interact with physical products via bar- codes will be highly relevant.

My colleagues Stefan Gugarel (cameo in figure 3.1) and René Pirringer, for taking on the majority of client consulting work in our company while I was working on this book. They allowed me to concentrate on building sample apps and writing book chapters while sitting next to them in our basement office, which I lovingly started to refer to as “the mine.”

My father, Klaus Drobnik, for passing on to me a passion for engineering, structured analysis of complex topics, and teaching. And, of course, for all the other things he did for me, growing up, that I could never thank him enough for. In his role as head of our family business, I thank him for having my back while writing has kept me from contributing to our company’s bottom line.

Last but not least, I wish to thank Apple, Inc. The iPhone SDK and the subsequent App Store revolution allowed me to reinvent myself as a full-time self-employed software developer and blogger of technical tutorials. And now I’m even a published author! Apple enabled me to boldly go where I had never gone before.

Author Copies

As an author you are entitled to 25 copies of the book for your own personal use. For the immediate future I will just leave the stack on my dining room table and marvel at it. Later I might be handing these out to several distinguished individuals.

Author Copies

As is tradition with all iOS-related items that I receive, I also wanted to do an unboxing video of these. So there YouTube video is here:

Conclusion

I still don’t really believe it, 15 months later. Is it really over yet? Maybe this will change as soon as I hold an author copy in my hands.

While working on the book for all this time I was unable to take on client work. Thankfully I was able to sustain myself from the other income I have from my company.

Now that the work is over I am looking for a new contract, something where I could sink my teeth into for around 4-6 months. Ideally something to do with either barcode scanning since this is where I am an expert now.

And so will you, if you buy my book. 🙂

]]>
https://www.cocoanetics.com/2015/01/book-out/feed/ 22 9438
Deal of the Day https://www.cocoanetics.com/2014/12/deal-of-the-day-2/ https://www.cocoanetics.com/2014/12/deal-of-the-day-2/#respond Wed, 03 Dec 2014 10:47:43 +0000 http://www.cocoanetics.com/?p=9387 My barcodes book is Deal of the Day at Manning on December 3rd! Get 50% off with the promo code below.

You can buy Barcodes with iOS from Manning at half price with promo code dotd120314au only on this day.

Barcodes with iOS

In this talk I give a quick overview of how the book came together and why you should care about barcodes.

The same promo code also works for iOS Development with Swift and Ionic in Action.

iOS Development with Swift wilken_cover150

My book is getting close to going to press, so the digital early access version you get from the early access system is quite close to the one being typeset right now. You’ll find it on Amazon early next year.

]]>
https://www.cocoanetics.com/2014/12/deal-of-the-day-2/feed/ 0 9387
Proudly prod.ly https://www.cocoanetics.com/2014/10/proudly-prod-ly/ https://www.cocoanetics.com/2014/10/proudly-prod-ly/#respond Wed, 29 Oct 2014 12:14:46 +0000 http://www.cocoanetics.com/?p=9354 Disclaimer: I am the ProductLayer Developer Evangelist. My job is to convince you to build apps using our platform. Contact me if you have any questions.

Have you ever tweeted about a product that has you excited? Have you ever posted about a product on Facebook that really annoys you? Are you a “digital native” who feels right at home in social networks, keeping loose contacts with your friends and business associates?

Until today, whenever you would post something to a social network, this information would drown in the flood of other people’s posts. There was no way of finding other people’s opinions about physical products, except perhaps Amazon product reviews. But wouldn’t you trust more your friend’s opinions than those of complete strangers?

Today ProductLayer announces solutions to the problems above. We proudly present: prod.ly – a social network on which your friends share their opinions on various physical products.

prod.ly is pronounced “proudly” because we believe that people want to share their product experiences if they are proud about their purchase. If they are exhilarated by the quality of an item, the great value for money or the way an item boosts their social status, they will want to share this with their friends in a lasting way.

Every product – which is identified by a globally unique barcode – has its own home page on prod.ly. Our vision is that in the not so distant future those product microsites will be the place for people to go to find more information about specific products. Instead of liking some generic page on Facebook you will be able to attach your liking or disliking to the product in question. You will be able to see photos that your friends and other user are sharing, showing products from different angles and in various situations. You see product information curated by your friends, which could help you with your buying decision. You see opinions and reviews about those products. What do you love?

We understand that  users will rarely want to post a full-on product review. We believe that short emotional statements – akin to tweets – will be what the users of prod.ly will want to share. We call these “opines”. prod.ly enables you to share opines as well as full-on product reviews. Where you see some info missing, you can simply add it, to the benefit of all other users.

prod.ly is powered by the distributed product database by ProductLayer.com. A free API gives developers access to this product information – including user interactions – from any mobile app or website. prod.ly is the user-facing web front-end to ProductLayer. We are looking for development partners to build the social client apps which would tap into this new social network.

Today we are soft-launching prod.ly as a public BETA. Users can sign up for a free user account on the website. We’d love to hear from you, you are welcome to share your impressions and comments with us.

]]>
https://www.cocoanetics.com/2014/10/proudly-prod-ly/feed/ 0 9354
Barcodes Book complete on MEAP https://www.cocoanetics.com/2014/07/barcodes-book-complete-on-meap/ https://www.cocoanetics.com/2014/07/barcodes-book-complete-on-meap/#comments Tue, 08 Jul 2014 08:08:47 +0000 http://www.cocoanetics.com/?p=9222 After I had handed in the seventh and final chapter of my Barcodes book, Manning is now also making this available on the Manning Early Access Program (MEAP). This makes the complete book content available for readers who prepurchased a copy.

There’s going to be a bonus section on OAuth 1, based on my recent work building an Open Source OAuth consumer plus a few minor tweaks related to API enhancements in iOS 8. But generally speaking all code that you will find in the book and samples will continue to work in iOS 8. Which is why we are considering dropping the “7” from the name. iOS 7 is the minimum deployment target for using most of the APIs discussed.

There has been a rumor that the Aztec and PDF417 Core Image generators have been made public in iOS 8, but so far I have not been able to verify this. I have an open Radar about this and also I emailed an Apple evangelist asking for verification. Until I do we have to continue assuming that those generators are still private.

Having said that, I am thankful to everybody who buys a MEAP copy of my book.  Please let me know if you see anything iOS 8-related that should be mentioned, apart from the authorization changes for Core Location.

]]>
https://www.cocoanetics.com/2014/07/barcodes-book-complete-on-meap/feed/ 1 9222
Open Letter to Long Lost Contacts https://www.cocoanetics.com/2014/06/open-letter-to-long-lost-contacts/ https://www.cocoanetics.com/2014/06/open-letter-to-long-lost-contacts/#respond Sat, 21 Jun 2014 07:08:11 +0000 http://www.cocoanetics.com/?p=9190 I extracted all E-Mail addresses from my archive, dating back almost 6 years. From the resulting 7303 I filtered all that didn’t seem to address individual people. That left 5466.

For a while I considered sending an email to all of these via Mailchimp. I even wrote the letter below, in English because I figured that most people would understand that. But then I decided against sending a mass e-mail, fearing that it would cause me more trouble than positive outcomes.

Instead I’m posting it on my blogs. Much less of a nuisance …

Hi,

I am trying to reach out to long lost contacts. For this purpose I scanned my email archive for all email addresses in the to and from fields and imported this list into a Mailchimp list. By sending this email to this list I can see who remains subscribed and which emails bounce.

Sorry to bother you like this, in bulk, but I saw no other way how to go through this list of 7000 people. If you feel bothered by this, simply ignore it because this is the only message I will ever send to this list.

However if this reminds you that we had an interesting contact in the past, please feel free to get in touch again by any of the means mentioned below.

Since I don’t know whether we had professional or personal contact let me mention updates for both sections. And you may ignore whatever you are not interested it. Deal? 🙂

Business Updates

I am a full time iOS and Mac developer for 7 years now. I work with two smart people who are working for two clients, one in Germany, one in USA. http://www.cocoanetics.com/references/

Over the past 8 months I wrote an iOS development book on barcodes and how you can leverage these in your iOS apps. This book gives you an overview on the bar codes supported by iOS 7 and up and will open your eyes for new app ideas everywhere you see a barcode.
http://www.cocoanetics.com/2014/03/read-my-book/

Now that my book is almost finished I am on the lookout for new development work. If you need something developed, I might be what you are looking for. This article gives you an overview of what I have to offer.
http://www.cocoanetics.com/2014/06/for-hire/

I’ll also pick up writing about development topics on my cocoanetics.com blog. These are the advertising opportunities for you there: http://www.cocoanetics.com/advertise/

– Web: www.cocoanetics.com
– Twitter: @Cocoanetics
– E-Mail: oliver@cocoanetics.com
– Facebook: https://www.facebook.com/Cocoanetics

Next to my software development business, I founded ProductLayer with two friends. It’s a startup looking for partners and investors. Read more about it here: http://www.cocoanetics.com/2014/02/from-barcodes-to-productlayer/

Personal Updates

I moved back to Austrian’s capital Vienna in April, into an apartment that I owned for 17 years now. I am recently single/divorced. I lost 11 kilos since the beginning of the year with a combination of Herbalife and lots of physical activity. http://oliver.drobnik.com/2014/04/bmi-normal/

I have to admit that during my time in the countryside I let many personal connections lapse. You might even say it was my arrogance, believing that I won’t need friends because I had received the ultimate life upgrade: marriage.

Let’s not dwell on the past, though. It is no problem if you make mistakes. It is only a problem if you don’t learn from them.

I’m curious what happened to you since we last spoke/e-mailed. What’s going on in my personal life you can see at any of the social media outlets mentioned below. If you feel like talking, get in touch. If not, then just save my address…. you never know.

– Web: oliver.drobnik.com
– Twitter: @oliverdrobnik
– E-Mail: oliver@drobnik.com
– Facebook: https://www.facebook.com/oliver.drobnik
– YouTube: https://www.youtube.com/user/mindpower74

Conclusion

Whether we had business or personal dealings in the past… if we lost our connection, let’s re-connect!

But if you don’t want to hear from me ever again, simply ignore this update.

kind regards
Oliver Drobnik

]]>
https://www.cocoanetics.com/2014/06/open-letter-to-long-lost-contacts/feed/ 0 9190
For Hire https://www.cocoanetics.com/2014/06/for-hire/ https://www.cocoanetics.com/2014/06/for-hire/#comments Wed, 11 Jun 2014 11:05:22 +0000 http://www.cocoanetics.com/?p=9174 Over the last 8 months I worked almost exclusively on my book on Barcodes with iOS 7. That meant that during this time I could not take on any new projects. That has changed now, that my book is feature complete. There are some edits remaining to be made, as well as adding info on enhancements coming in iOS 8.

But as I need to earn a living I am now back on the market for taking on project work. I am acting Developer Evangelist for our Product Layer startup and am now looking for contract work to fill the income gap. I’ve summarized my skills and interests for your reference.

Oliver DrobnikFor your consideration…

Oliver Drobnik holds an IT engineer’s degree from Austrian college Spengergasse. Unfortunately that was way before Bachelor’s degree became a thing in Europe. So this is roughly equivalent to a Bachelor of Science.

Oliver has been developing iOS apps since the SDK was released in Summer 2008 and turned full-time iOS developer in January 2009. This equates to 5.5 years experience at the time of this writing. He started out with a few apps of his own, started to sell proprietary software components via his parts store and maintains several well-known Open Source projects. Most notably DTCoreText. You can see a list of clients here.

Oliver loves to develop software for Apple platforms, his expertise includes:

  • iOS and Mac text technologies: Core Text and TextKit
  • Barcode technologies in mobile applications
  • Core Data, background processing
  • Test-driven development and coverage management
  • Performance optimization and finding/fixing obscure bugs
  • Managing Open Source projects
  • Developing for Mac OS X and iOS in parallel
  • Interacting with Apple (app review, bug reports, DTS, marketing)

Particularily, Oliver loves to tinker with niche/new technologies and develop libraries/frameworks with clean interfaces, good documentation and sufficient unit tests. He likes to teach software development techniques and best practices. He loves to stamp out app prototypes.

Oliver is based in Vienna, Austria and not interested in permanent relocation to other countries. Work is either remote or on-site on weekdays. You can get in touch by e-mail if you have an interesting project that could benefit from his involvement.

]]>
https://www.cocoanetics.com/2014/06/for-hire/feed/ 1 9174
Deal of the Day https://www.cocoanetics.com/2014/04/deal-of-the-day/ https://www.cocoanetics.com/2014/04/deal-of-the-day/#respond Thu, 10 Apr 2014 11:57:57 +0000 http://www.cocoanetics.com/?p=9032 My publisher Manning  is highlighting 3 of their iOS titles on April 11, all three are the “Deal of the Day” meaning that you get 50% off with promo code “dotd041114au” if you purchase them on this day.

The three books cover different levels on iOS development, the “Hello!” one aiming at beginners, the “in Action” covering advanced topics and mine “Barcodes” going for a vertical slice of iOS 7 technologies. Manning has many more books to a wide range of development topics.

The titles with the MEAP stamp are still in development but you can preorder them to read all the chapters the authors have already handed in. Of course you also get the finished book (digital and/or soft cover) when it is done.

Hello! iOS Development

Hello! iOS Development

iOS 7 in Action

iOS 7 in Action

Barcodes and iOS 7

Barcodes with iOS 7

Brendan Duddridge – maker of the famous Tap Forms DB suite:

“Reading this book has made me very excited about adding barcode printing support to Tap Forms. The possibilities are endless and my mind is already buzzing with ideas. It’s a very well written book with tons of great information. Oliver has done a wonderful job and I’m looking forward to reading the rest of the chapters.”

Sean Williams – CEO & VP of Software Engineering rade eccles:

“I’ve been an SAP developer for 15 years and have extensive experience with implementing inventory management with barcodes.  We are developing a product for use in small business that helps with inventory control.

Oliver’s work with barcodes on the iOS platform gives us a great head start and will no doubt save us countless hours of effort.  It’s easily worth every Euro spent  and more.”

Tom Maes tweeted:

“Love the fact that someone is doing a deep dive into this topic. Lots of potential.”

]]>
https://www.cocoanetics.com/2014/04/deal-of-the-day/feed/ 0 9032
Read my Book! https://www.cocoanetics.com/2014/03/read-my-book/ https://www.cocoanetics.com/2014/03/read-my-book/#comments Thu, 06 Mar 2014 16:12:50 +0000 http://www.cocoanetics.com/?p=9011 For the past four months I have been working almost exclusively on my Book Barcodes and iOS 7, which is why there have been only very few tutorial blog posts on Cocoanetics.com. Now the first fruits of my labor of love are yours for the picking.

My publisher Manning has started the MEAP pre-order program for the book. This MEAP program gives you – of course – the final book when it is finished, but you can also read the chapters in their raw unedited state as I finish them.

Even better, you can read the first chapter for FREE, no purchase necessary. This chapter gives you a solid overview over the barcode types that iOS 7 can scan, explains their differences and shows where they are used.

My goal with this book is that you – as an iOS developer – should be getting not only your money’s worth, but much much more. Essentially I am paying you to read my book.

iOS 7 does not support generation of 1D barcodes. Still I wanted to have a modern and powerful way to have this functionality present in this book which is all about all types barcodes. So you are getting the most current version of BarCodeKit completely for free. As long as you own a copy of the book in any form you can use BarCodeKit to create 1D barcodes in all your apps. Of course there is info on how to use Core Image but not just the publicly available info. I got the best way to scale QR codes straight from Apple DTS.

In chapter 5 – which is already complete – I am teaching you how to print individual Code 93 stickers like you would with a serial number for hardware inventory tracking in an enterprise, using Air Print and roll-fed printers.

So far you get the first three chapters on the MEAP. 4 and 5 are done and will come online as well soon once my development editor and I did a few edits.

All chapters after the first one contain sample apps and a detailed tutorial how they are put together. Make no mistake: those are not the kinds of tutorials you would find anywhere on the web. Instead they are all original and practical.

For example chapter 4 shows how to produce and validate Passbook tickets without a server. There’s even a Ruby detour in this part for compiling and signing Passbook passes.

Chapters 2 and 3 originally were one chapter but I had to divide it in two and the book is much better for it. Now chapter 2 gives you a solid introduction to AV Foundation media capture, unlike you have ever seen it before. This introduction alone would be worth the purchase price of the book. I teach you how to build a simple camera app and work the various camera settings.

Chapter 3 builds on the groundwork laid in chapter 2 and adds native barcode scanning. Again you are getting way more than you can get on the web. Through my extensive research into it I am able to give you performance tips and tricks and even expert advice how to optimise the UI for the kinds of barcodes you are supporting in your app. There are big differences!

Barcodes serve as the common theme for all chapters, the final two chapters – which I have to write yet – will look at how to best communicate with a web API using OAuth for user authentication. You’ll also learn how to correctly use NSURLSession for having iOS perform background updates without your app even running.

In the final chapter I chose the theme Context. There are four layers of context when a user scans a barcode:

  1. if the barcode is a serial number then the context is a specific product instance
  2. if the barcode is a product number then the context is a product model
  3. Core Location tells you if the barcode is scanned in the vicinity of a brick&mortar store.
  4. iBeacon technology can tell you in which location inside the store the user scanned the barcode

Few developers had a reason to dive really deep into these topics and so I felt they make a great addition to the book as well.

Barcode technology is 40 years of age this June. That is to say that it is incredible well understood and established. And nothing beats FREE. Everybody can print barcodes at literally no cost. And when Apple added broad support for it in iOS 7 this became a sweet spot: all iPhone users now have a great mobile barcode scanner in their pocket. One with always-on Internet, and with sensors to give contextual information about the user’s situation.

I believe that this nexus will enable a new breed of exciting apps that center around physical things. You could be the maker of some of these apps!

Once you know what this book teaches you about barcodes and related technologies in iOS 7 then you will suddenly see opportunity – and get app ideas – everywhere, since you never have to look far to find yet another box with a barcode on it.

So please do yourself – and your future – a big favor!

Buy the book and also read it! Through March 18th you even get 50% discount with promo code “bwiaunch50”!

]]>
https://www.cocoanetics.com/2014/03/read-my-book/feed/ 20 9011
Google Analytics Alternatives https://www.cocoanetics.com/2014/02/google-analytics-alternatives/ https://www.cocoanetics.com/2014/02/google-analytics-alternatives/#respond Thu, 20 Feb 2014 09:44:07 +0000 http://www.cocoanetics.com/?p=8995 We use Google Analytics in some of our apps, but lately some people have grown dissatisfied with it. In particular non-technical people find it confusing how data is being presented. We iOS engineers had to wait for a long time for Google to finally add arm64 support.

So I asked on Twitter for recommendations.

Here are the results, sorted by number of times they were mentioned:

One interesting suggestion was to build our own, but why would we want to reinvent the wheel? So which to choose from the existing solutions?

Matt Bridges offered this guidance:

If marketers are going to be using analytics tools, Mixpanel or Localytics. If developers want data to play with, Flurry.

This is as far as my research went, stopping short of calculating cost. Google’s main advantage is that it is offering their analytics services for free. Most independent analytics providers need to charge for API calls above a certain level.

If you are unhappy with Google Analytics there are serval options to choose from. In my poll Mixpanel and Flurry were recommended most often. Some services allow you to install their software on your own server, calling it the “Enterprise” variant. In any case moving away from Google always comes at a price, be it in monthly charges or a substantial upfront free for a standalone installation.

]]>
https://www.cocoanetics.com/2014/02/google-analytics-alternatives/feed/ 0 8995
From Barcodes to ProductLayer https://www.cocoanetics.com/2014/02/from-barcodes-to-productlayer/ https://www.cocoanetics.com/2014/02/from-barcodes-to-productlayer/#comments Tue, 11 Feb 2014 14:40:51 +0000 http://www.cocoanetics.com/?p=8969 One fine day, late summer 2013, I noticed that Apple had added a ton of new functionality to iOS, in particular related to barcodes. This set a train of thought in motion, the fruits of which are just now beginning to show.

Apple investing into barcode technology opened my eyes to the technology. Our eyes have learned to not see the barcodes and consider them as white noise. The iOS 7 news were beginning to undo this learned barcode noise filter in my brain.

I began to see barcodes everywhere. UPCs on physical products, serial number barcodes on  devices and boxes, delivery service tracking labels, and many more.

Barcodes are simply numbers which are represented in a fashion that can be deciphered by a barcode scanner. This technology – based on a laser – has been around 40 years this year in commercial use. Scanning technology based on CCDs is relatively new, but is now on par with lasers. So much so that all iOS 7 devices have a built-in barcode scanner, available for free to be used by any developer.

In short, barcodes are a mature technology – being 40 years in production – and they meet up with the rise of mobile technology. Always-on Internet connectivity, mobile sensors and a camera for scanning form a technology nexus. Everybody with an iPhone is carrying the ability to scan barcodes and retrieve information about them over the Internet.

So went my thought process.

Then I began to research into what sources of product information could be tapped to make sense of those scanned numbers. I found the Amazon Product Advertising API and toyed with some queries. But then I found their terms of service which forbid use of this API in mobile applications and on websites optimized for mobile devices. Bummer!

Searching for Product Info

My search continued, I found a few more silos of data, until I contacted GS1 the worldwide authority managing product numbers. They refer to them as GTINs, Global Trade Identification Numbers instead of UPCs or EANs… this was only one of many hurdles to understand when diving into barcode technology.

You would expect for the standards body to have a database of all products… but you would be wrong. They have around 6 million products in their GEPIR database, accessible only through an obscure SOAP-based API. Do I hear a “yuck!”?

Next I talked to a US-based company which had collected – mostly by scraping – 30 million products. But there it dawned on me that the only way to be able to offer product information that is unencumbered by licensing issues would be to collect those yourself.

Enter: A Book Contract

Then in September I got contacted by a book publisher’s Acquisitions Editor, who asked me if I would have a book in mind. It so happens that I had 3 ideas to pitch, but I felt the most passionate about barcodes. After a short back-and-forth about the TOC, the book contract was signed and I went to work on it.

The book “Barcodes and iOS”  which will be done and published later this year is looking at barcodes as a common thread throughout the book. It explains what kinds of barcodes are supported by iOS 7 and where they are usually used. With this foundation it goes on to explain a variety of technologies somehow related to barcodes. The point of the book is to open your eyes to the promises of barcodes meeting mobile devices. With this book under your belt you will begin to see opportunities for a new kind of mobile apps everywhere.

To this date I have produced 4 out of 7 chapters. The first three are with 10 reviewers for the first review and I hope they like what I created.

The Product Layer for the Internet

Around the same time when I started working on the book I put together a vision document about a web-based Product API which I sent to a few interested people for feedback. I called it PAPI, but I was told that this is an unfortunate name, in particular for US people.

One piece of feedback came from Jonathan Libov who on July 28th, 2013, mailed me:

What’s the elevator pitch? “Product information as a service” is not such a bad one IMO. Or, to paraphrase Mr. FourSquare himself, “the product layer for the internet”.

And so the baby got a new name. Thanks Jonathan!

The whole thing was cooking on small flame for a couple of months, until in December 2013 I decided that I wanted to try out 99 Designs to have a logo for ProductLayer. Even if is not ideal from a marketing point of view, having a logo for the project somehow made it “more real”.

At that time I had pitched ProductLayer to several of the people around me, amongst them one who decided to quit his full-time job and start working on it full time as of February 2014.

What is it?

ProductLayer – from the point of view of mobile app development – is the API you need to build product-centric apps. It will be a modern and simple JSON/REST-based API which lets you retrieve basic product information for each scanned bar code.

Imagine designing beautiful apps for organizing a user’s books, audio media, DVDs and Blue-rays, perishable food, medicines … there is no limit to your imagination.

ProductLayer aims to get to the sweet spot between both worlds: official sanctioned product information and where this is – initially – lacking, crowd-sourced info. Initially it will happen that many products are not found by a barcode you scan. But the SDK which I will begin to work on after I finished my book will offer a way for any app using it to contribute simple product information back to the database. This way the first person adding a book title is multiplying the benefit to all subsequent people scanning the same book.

Of course there needs to be a commercial angle to this to be sustainable. We are going to work this as a start up. There are multiple places where revenue can come from. Affiliate commissions, advertising on product web pages, selling anonymous analytics to product vendors and many more.

As a developer we want to you to be able to experiment with many different kinds of apps. If you have one that sells incredibly well and causes lots of traffic on our servers then there will have to be a certain fee for that. But we will never ask you for a share of your profits. Rather we want to do tiered plans based on actual usage. A free tier up to a certain amount of traffic and then several tiers above that that adjust monthly to your needs per app. A couple of dollars per month to cover the cost.

The details for that will have to be hashed out, but the idea is that you are successful with your apps and have happy customers. And out of this bliss you will be happy to support ProductLayer which is the platform you built your product-centric apps on.

The Failure of Crowd-Sourcing?

There are several companies out there who tried crowd-sourcing data and who failed. We believe that this is a risk to us as well, but with a key difference. We want to be the platform and interesting and useful apps should be a multiplier. The more useful apps there are, the more users will use them. The more users scan products, the more products will be in the database.

We will be promoting your app heavily on multiple channels and also frequently highlight the coolest ideas. This will be free marketing for you.

On top of that we are working on a few strategies to get “official data” in there and to add gamification elements that allow users to correct other user’s mistakes and report spam.

In a way you could say we are still in the feasibility study stage. There are many unknowns. So we need your help.

Your Chance to Something Great

We launched a teaser page a few days ago at productlayer.com. There you can pre-register for a developer account. We are using this pre-registration number to gauge global interest in such a service. I might have been wrong; maybe I am the only developer who feels inspired by barcodes and product information… the registration stats will tell us.

Once we reach a certain number of registrations we can proceed with a private BETA where we will work with you on building prototypes for your ideas based on our API/SDK. The first version lets you query for GTINs, pictures, create products and upload pictures, plus a few more features. In time for you shipping your app we will have a stable v1 API that you can go into production with.

Me tweeting about it got us a few hundred developers in 2 days. I’m hoping that this blog post piqued your interest as well and you will go pre-register, too. Emails entered there will not be used for any other purpose then becoming a developer account.

Pre-Register your Product Layer developer account

]]>
https://www.cocoanetics.com/2014/02/from-barcodes-to-productlayer/feed/ 5 8969