The choice to port to RN wasn't technical at all. Tobi (the CEO) prefers RN philosophically. No technical argument opposed to RN--which is super easy to come up with, along several axes--would have stopped the port. It was inevitable.
This is my opinion, as I watched it unfold. I'm no longer at Shopify.
Former Shopify iOS dev here. I pushed SO HARD to get dark mode to be a thing we would do. It's table stakes, IMO, in 2020 and beyond, to support it. We'd get roasted on Twitter, LinkedIn, just about everywhere. HN Comments, even. :)
Got shut down at the highest level. Like, definitively. As in, please don't ask again.
I don't think you'll ever see it as long as Tobi is CEO.
> 1. Joel saying "I didn't understand that question" and then moving on might have been succinct and practical, but it was just not a good reflection of him.
He's presenting in the style of You Suck at Photoshop, a series of Photoshop videos in the same style.
They specifically made comparisons to the A8 chip (in the 6 and 6+) during the event and emphasized the speed increase. Apple knows their true problem is getting old iPhone users to upgrade.
Also, did you see the event? Not the same phone at all.
Wide color, awesome new camera and dropping it in the toilet might be enough.
When I switched to Mac from Windows about 5 years ago (because I decided to be an iOS developer), this is the biggest thing I noticed. There was zero feedback, or a just a quick beep out of the speakers. The anthropomorphic equivalent would be malevolent staring.
This is normal. I'm feeling it right now with what I want to do.
In my heart and mind, I _know_ I can do it, but then the doubts and fears rush in. I totally understand the feeling you're going through.
I just finished _Art & Fear_ by David Bayles and Ted Orland which is a fantastic book about creating stuff. Nearly all the advice applies to software developers.
Don't give up.
Success isn't binary either.
Release your project (Some success!). Make some sales (More success!). Market your project to get more sales (Success!).
You probably won't get fuck you money on the first day, but with enough marketing, maybe you'll be able to quit your job within the first year.
I don't quite have that feeling watching this show (I can relate to it, but I'm not in the Valley; the show is hilarious), but shows like Catastrophe or movies like This is 40 hit _very_ close to home for the same reason. Funny, but in an almost painful way.
So I get how you might feel that way if you're in similar straits as the show.
A lot of comments in the thread are commenting that the developer should be able to slice up PSDs, but why not go further and be responsible for the design and interaction. It requires empathy for the user and, let's say 100 hours spent on understanding fonts, colour and layout.
The constraints of the platform should absolutely guide the design. Fight those constraints and the app will feel weird on the platform.
Most designers won't know the constraints of the platform, or won't care; they want to make a design that's unique and beautiful and all that. The client (or any human being) will look at the pretty pictures and love it. The eventual user of the software _won't care at all_.
Designers make pretty stuff that demos well. Those designs are usually a lot more work to pull off in code, though. In the middle of implementing those designs, all I'm thinking is, "What a waste of money. No user is going to care about this [animation|screen transition|custom look|beautiful settings screen]."
This applies to web and mobile and desktop apps.
Look at the apps you use everyday. They're probably boring to look at.
At the least, if you're in the client position, get a designer and developer together at the same time to hash out the app. You can probably get something that looks decent, works well and costs less.
> The server should always be the source of truth. It should always enforce all the consistency rules. Database schemas can be a critical tool here as well.
Amen. And I'm a client developer. Clients aren't for data validation, etc. That's the server's job because the server has to store it, use it, ship it off to other things.
Clients are for displaying all that data in a way a human can understand. It has people skills, damn it!
> I think people often confuse "simple" with "pretty".
Oh man, this.
Even richer is confusing usable with pretty. I guess nowadays people say "user experience" instead of usability, or the extremely unfortunate: UX.
Simple usually covers the very first prototype version, but then there are always requests for complicating the feature set so you can't have a simple interface anymore.
Joel Spolsky had a conference talk about this once (can't remember where I saw it). There is a tension between simplicity and power: some need simplicity; others, power. It's a spectrum. What developers and designers should strive for is elegance so that one can move along the spectrum without noticing it.