alexbrie . com

Quick introduction to Grand Central Dispatch and why you should use it

Hello idevs! Time sure flew by lately, so here I am, once more having to post one of my development adventures, forced by the unwritten agreement I took when joining the iDevBlogADay project.

As any programmer can tell you, in most (over 95%) of your programming tasks you won’t have to deal with threads or any form of asynchronous programming. Chances are you will never need to deal with this, in most programming jobs. However, in iOS world, you have to. And unless people scare you upfront by pushing big words like threads and asynchronous programming, you should totally spend 5 minutes to at least grasp the big picture.

Read the rest of this entry »

Despre motociclisti

Postul asta al lui Petreanu despre inmormantarea recent televizata a unui tanar motociclist mi-a amintit de o chestie(nu mai stiu daca am mai povestit-o in trecut sau nu, dar oricum am vrut).

Read the rest of this entry »

Apple versus Android

Am petrecut cateva ore dimineata scriind un lung post despre haterii care si-au facut o misiune de oroare in a critica orice tine de Apple, iPhone, iPad si de posesorii de gadgeturi cu marcile respective. Post motivat de link bait-ul asta al lui Zoso. 

Am renuntat la post-ul respectiv pentru ca sa-l scriu pe acesta, mai scurt. Dar se pare ca am gresit – si cel de fata se dovedeste exagerat de lung. Read the rest of this entry »

What I learned from TechTalk 2011, London

I guess it's my time again for #idevblogaday. I'll keep this post short, as I'm still struggling with a bug that prevents me from submitting Clean Writer Pro.

At the beginning of this week I was at Apple's iOS5 TechTalk in London. It was great. Apart from the rare opportunity of meeting great iOS developers from around the world(I met awesome guys from UK, Vietnam, Germany, Canada, Romania and more), the talks day also brought me a (hopefully long-lasting) inspiration and motivation. In particular, there are three most important things I came back with:

  • Try to create innovative, distruptive and industry-changing apps. Second best is to make them awesome and distinctive.
  • Don't get stuck in the past. Although it's obviously cool to support old devices/OS versions, it's most often not worth the effort. Aim to use latest tech for the latest devices, as they are the most popular (of the 250 million total iOS devices, 50% have been sold in the past year – that's one huge market)
  • Go international & localize. There are lots of non-US iOS owners.

Two less important but still interesting things I learned:

  • Always try to learn. Past WWDC videos and iOS video tutorials on iTunesU are way worth the effort to download and study.
  • There's no such thing as a small niche. It all depends on the app and your marketing plan.

3+2 ideas. That's it. But they were totally worth the trip. Talk to you later.

Compacted Google Reader

After Google Reader’s UI change of today I, like millions of users, was furious. I won’t go into detail about the reasons (you can read them on my Romanian blog), but summing them up is easy: the new UI was probably designed on a couple of 30″ computer screens and is a visual insult to anyone trying to use it on a normal, smaller, screen. Regardless of the colors and fonts used, the new Google Reader UI is unusable due to its excessive use of whitespace which fills up the screen with unneeded padding and margins, while the actual content is crammed into a tiny space forcing you to scroll like a mad man.
Solutions started to appear pretty soon after, in the form of user-side scripts using browser extensions such as Greasemonkey or UserCSS.
Being a Safari user myself I followed a Twitter friend’s suggestion and created my own little UserCSS stylesheet which fixes the excessive whitespace issue, while keeping the new style.
If you are curious to try it, check out this page on Github. You can easily insert the style into a Greasemonkey script, if you wish.
From this..

..To this

Design, Google Reader si Steve Jobs

Daca de-a lungul vietii ati alege sa cititi doar o biografie a unui mare om, eu v-as recomanda sa fie cea a lui Steve Jobs. Walter Isaacson, autorul, a reusit sa faca ceea ce se doreste de la un  Vorbitor in Numele Mortilor: sa prezinte o imagine corecta a unei personalitati extrem de complexe, cu nazuintele, viziunile, defectele, angoasele, esecurile si reusitele sale. Este o carte despre un om, cu partile bune(tenacitatea, pasiunea, gustul) si rele(manipularea, obsesia, lipsa empatiei). 

Dar adevaratul motivul pentru care ar trebui sa o cititi este ca, printre franturi de conversatie, cartea reuseste sa explice niste lucruri foarte utile: de pilda cum sa pui pasiune in ceea ce faci; cum sa nu stai in banca ta ci sa aspiri la mai mult; cum sa incerci sa fii mai bun; si mai ales, sa intelegi ca designul nu este doar vopseaua si cutia de la suprafata, ci ca adevaratul design inseamna si cum interactionezi cu produsul, cum arata el prin interior si, fundamental, cum ar trebui sa functioneze.

Mi-am amintit de partea asta cu designul vazand noua interfata a aplicatiei web pe care o foloseam(pana azi) cel mai des: Google Reader. Este groaznica.

Facuta de cineva care a citit ca designul web bun trebuie sa contina mult spatiu alb, si a trecut la fapte. Peste 25% din inaltimea paginii este ocupata cu zona fixa continand: bara de navigare in produsele Google(o chestie creata pentru acei 0.0000001% din populatia globului care nu au mai folosit Google niciodata), o zona URIASA DE CAUTARE in interiorul feedurilor (pentru ca, nu-i asa, daca era mai mica si mai discreta nu ne-am fi prins ca o putem folosi), o zona SI MAI URIASA cu padding de cca 10px cu butoane comune gen “subscribe”, “refresh”, “mark all as read”, etc. Li se mai adauga inca o zona fixa continand titlul folderului sau feed-ului, padding maricel si acolo, si nimic altceva. Mai mult, degeaba ai monitor larg: articolele sunt inghesuite pe verticala, lasand aproape jumatate orizontala din ecran libera.

Rezultatul este un site pe care teoretic ai vrea sa-l folosesti ca sa citesti lucruri de pe web. In realitate peste un sfert din inaltimea paginii (la o rezolutie de 990px inaltime) este fix si nescrolabil, dedicat unor functii de care as avea nevoie in mai putin de 5% din durata utilizarii. Iar functionalitatea principala, de citit de bloguri, este inghesuita in josul paginii, labartata cat de vertical se poate, fortandu-te sa dai scroll de multiple ori doar ca sa reusesti citi fie si un singur articolas.

Revenind la design: stilul general incearca sa fie acelasi ca in alte aplicatii Google (Docs, de pilda), dar reuseste sa blocheze un spatiu urias din ecran(barele fixe cu butoane si titluri ocupa mai mult loc decat in Google Docs) de pomana. Produsul efectiv (cititul de articole de pe net) este pus in plan secund, ca un musafir nepoftit sau un intrus inorportun; simti priviri reci in ceafa si soapte cum ca “uite care-i treaba, noi te lasam sa-ti citesti feed-urile, ca prea insisti dar… cum sa-ti zic.. poate data viitoare gasesti sa o faci de prin alta parte ca ne cam deranjezi“.

Cu riscul de a fi acuzat de conservatorism, cred ca vechea forma i se potrivea mai bine – crescuse simultan cu produsul, il ghidase si fusese ghidata de el. Ziceam ca una din lectiile invatate din cartea pomenita este despre design si cum acesta ar trebui sa fie fundamental inglobat in produs si nu o spoiala peste partea de functionalitate. In cazul noii interfete Google Reader, noua forma este in conflict cu fondul; atunci cand la un produs de citit articole pe net textul articolului este inghesuit in sub 25% din pagina, iar peste 50% din aceasta este “de umplutura”, exista o problema grava. 

Are you coming to the TechTalks?

One week ago, Apple announced its iOS5 Tech Talk World Tour, with a great talk agenda prepared. The announcement email took a bit longer to reach me, so I first learned about it from Twitter. Needless to say, I instantly applied. My target of choice? London, obviously – I knew there’s a great iOS community in UK which I’d love to meet, I had never been there and also wanted to combine tourism with business (can we call it business if it’s a talk for developers teaching them new tech tricks to use in their apps?). Eventually, after 5 long days of waiting, I got notified of having been accepted to the London tech talk (I had access to two iOS accounts and had also applied to Rome to double my chances – I was only accepted to London, though).

So… London, here I come!

Due to the late notice(trying to book a flight with less than 14 days before the flight) I missed the last economy seats on the direct British Airlines flight, my only option was Lufthansa with a pretty awful schedule, risky plane changes in Germany and more expensive with over 50%. Also, it turns out that I might not be able to visit London at all, as I’ll be arriving late in the evening of the 6th and will leave the on the 8th at noon. Well, that’s how life is sometimes, you can’t have it all. I wasn’t planning to be too much of a tourist, but I had hoped to take a peek at some standard London attractions; but, after all, that’s not the reason why I’m going there.

Anyways, to conclude this useless post, I was wondering if any of the iOS developers reading this blog are coming there – if so, why don’t you leave a comment with your blog url/twitter so maybe we can get together during one of the breaks and, you know, socialize? If you’re not coming to the London Tech Talk on November 7th but to another one, where is that? Still curious to find out! :)

More AppStore scams – Flash Video Exposer

While casually browsing the AppStore I noticed an intriguing app called “Flash Video Exposer” which, at the time, was #1 Top Paid app in the Romanian iPad App Store. It was also in the top 30 paid apps in the iPhone App Store. Problem is, all user reviews unanimously cry that this app is a scam, and a pretty expensive one actually (8 euro).

Curious to learn how it was possible that an app whose users call a fake can still be in the App Store, I started looking for more information.
It turns out that this is a resubmitted version(under a minor name change) of an app that had been previously removed from the store (we can’t tell if at Apple’s initiative or simply at the developer’s). It used to be called “Flash Video Expose” and, as such, managed to receive many complaints, dedicated blog posts about the scam, and even YouTube reviews exposing it. What matters is that now it’s back, with a minor name twist and a different “developer” listed, selling the same fake features for an even higher price. And, according to the download charts and product reviews, it works.

Don’t bother looking for it in the US App Store; probably having learned its lesson, the developer didn’t submit it there; since the US App Store is under thorough scrutiny from the IT press, popular blogs and, obviously, Apple staff, when you want your scammy app to fly below the radar you should avoid it.

How well does such a scam do? According to AppAnnie, pretty well – it is the most popular/grossing Utility app in tens of App Stores. True, revenue from minor App Stores is significantly smaller than it would have been from the US store but, with a bit of luck, if this scam remains undiscovered for a couple of months, it should bring its author a few hundred thousands in revenue, if not millions of dollars.

If you ask me what Apple could have done to prevent this, my answer is simple: they need to add a visible & easy to access contact form inside iTunes App Store for app complaints. As it is now, people don’t have a clear method to notify Apple of App Store issues such as scams, copyright infringements or ill-behaved apps. Sure, adding this would be a logistic nightmare and likely affect the reputation of the App Store ecosystem, but it’s necessary and way overdue.

Until then, blog posts such as this one and Tweets are the only means we have of letting Apple know that they should do more to protect their users.

iPad 1 multi-gestures on iOS5

Since I upgraded my iPad 1st generation to iOS5 I started to look around for the previous Settings menu item – “Multitasking gestures”. For previous OS versions it used to be there, enabled after having put my iPad in development mode, but now it was gone, vanished forever.
I’ve tried to put the iPad in development mode again (by using it to test iOS apps from within XCode) but to no avail. It looked like a bleak future, one where I’d be angry with Apple for downgrading old devices by removing previous features, just so that they could make iPad 2 a bit more appealing.
Luckily a random chat today with an online friend gave me the answer; apparently it has been known to many others since appearing on Lifehacker and Gizmodo : there is a tool in town that does just this – instead of jailbreaking the iPad, it simply activates the Multitasking gestures once more. You can download it from here. And, if you get tired trying to put your iPad in DFU mode following redsn0w’s bad tips, you can try the method in this youtube video, which worked perfectly for me.

Result? Multitasking gestures work again for me, and I’m a happier iPad user.
The end.

Ce trebuie sa faca Apple pentru Computer Science

Am citit azi via Twitter un articol de pe Acm.org intitulat “What Did Steve Jobs Do for Computer Science?” care, evident, converge spre a critica lipsa de implicare a Apple in comunitatea academica si, mai ales, faptul ca Apple, spre deosebire de Intel, Microsoft si altii, nu dau si ei un banut cercetatorilor din universitati. 

Poate sunt eu cam acid, dar genul asta de articole imi inspira o greata profunda, trezindu-mi in minte imaginea unor pusti de pe langa blocuri care ma trageau de maneca sa le dau si lor un leu. Nu pentru ca le-ar fi fost foame, nu pentru ca aveau nevoie de bani (erau copii spalati, imbracati bine, etc), ci doar pentru ca ma vazusera imbracat decent si s-au gandit sa-si incerce si ei norocul. Poate-poate pica de o ciocolata (a picat).

Cam asa imi pare si tonul autorului, despre ale carui realizari academice sau de cercetare in computer science nu gasesc referinte online. Apple sta pe o tona de cash si nici macar nu sponsorizeaza vreun concurs stiintific sau vreo conferinta. Niste  magari – auzi soro, sa aiba ei atatia bani si sa nu ne dea si noua din ei.

Chiar asa, mai Apple. Dar se poate? Voi aveti bani si nu vreti sa ne dati si noua de o ciocolata?

Nu conteaza ca Apple cumpara cu bani grei startupuri cu tehnologie de ultima ora rezultate din cercetari de top in Computer Science si nu numai, motivand astfel cercetatorii sa puna osul si sa inventeze si ei chestii tari si utile lumii (nu doar articole pe hartie). Nu conteaza ca are programe speciale de reduceri si oferte pentru mediul academic, sau ca produsele sale sunt parca special concepute pentru utilizarea in universitati (unix based, pre-dotate cu multiple limbaje de programare si compilatoare, portabile, accesibile). Pentru piscotarii autori de articole de umplutura, conteaza doar ca Apple nu da bani la conferinte si nu sponsorizeaza concursuri. Faptul ca de cand a aparut AppStore-ul si, dupa cum spunea cineva de la Forbes, the apps revolution, tinerii sunt mai interesati ca oricand de a invata programare, sperand sa devina si ei milionari din aplicatii, este de asemenea irelevant. Conteaza doar ca Apple are bani si noua nu ne da nimic.

Nu zic ca cercetarea academica este rea, dimpotriva. Pana la urma, ea ne-a adus calculatoarele, Unix-ul, internetul si altele. Google, Microsoft, Intel, HP si altii fac foarte bine sa sponsorizeze cercetarea universitara si sa dea ceva inapoi comunitatii care i-a construit. Dar Apple a fost creat de un tip care nu si-a permis sa mearga la facultate si a reusit sa hackuiasca un pic sistemul educational intrand pe sest la cursuri si de un hacker care a invatat harware si software in timpul liber, lipind tranzistori acasa. De la inceputuri, cultura Apple a fost de hackerdo-er si nu de thinker, iar contributia lor la Computer Science este una indirecta, prin intermediul produselor si nu a sponsorizarilor. Si nu cred ca poti invinui vreo companie pentru ca vrea sa dea bani celor care, in opinia lor, ii merita cu adevarat. Sunt banii lor, e problema lor. I-au castigat pe drept (spre deosebire de WallStreet) si au dreptul sa aleaga ce fac cu ei. Iar articolele de genul celui comentat de mine ar merita ignorate (si sincer habar nu am de ce nu am facut-o  - poate doar pentru ca aveam chef sa mai scriu ceva pe aici).

Hi! I'm Alex Brie - developer, blogger, digerati, micro entrepreneur. I created tens of iOS & Mac apps including: Self Help Classics, Clean Writer minimalist editor(for Mac&iPad), the TouchBooksReader ebook framework and many more. I run my own company, , a tiny passionate app studio.

If you prefer email subscription:

Enter your email address:

Delivered by FeedBurner