Native Mobile Apps Styled With CSS - Pixate (YC S12) Launches
techcrunch.com
techcrunch.com
Why?
You're shipping me a binary only. I want the source. I don't want to wait for you to fix some shit that you may or may not get around to doing. I have a really strict rule about this when it comes to client work, even stricter for personal work.
Your idea that I should base an entire application on a closed source binary that may or may not work is customer hostile, imho. You are inadvertently leaving customers out to dry when something breaks or doesn't work correctly. Unless your company has a team of devs ready to handle these cases ...
Would have been a good idea when the component market was roaring in the Borland Delphi days, but we're in the future now were open source is the way to go.
Pass.
Accordingly, I'll likely use Pixate for apps shipped under my own brand, but I'd never use it for client work until this situation is resolved. The risk is simply too great.
There's an open source solution that does roughly the same thing but not as nicely, called NUI (http://www.cocoacontrols.com/platforms/ios/controls/nui), that you might want to check out.
[1] In case Paul or Kevin see this and want more context, the reply I got was via Kickstarter on July 24 2012 at 8:40AM Pacific.
That applies here.
Aside from a small number of top-level classes[1] UIKit isn't designed to be subclassed. When you subclass things like UIAlertView, UIButton, UISwitch, UITextField, UIWebView… etc, you're in for a world undocumented gotchas and spending hours to do small simple things.
1. UIView, UIControl, UITableViewCell, UIScrollView, UIGestureRecognizer, UIViewController, UIApplication and maybe one or two other classes.
Also I wasn't talking specifically about UIKit. Foundation is another great framework that I've subclassed many times.
It's not perfect but Apple puts a lot of work into documenting how to subclass their frameworks. Third-party UI frameworks like this are much less forgiving.
Apple's documentation also gives some examples:
https://developer.apple.com/library/ios/#documentation/Cocoa...
https://developer.apple.com/library/ios/#documentation/Cocoa...
I'd much prefer to write Objective-C code than pure C.
Anything I use in my apps has to be open source in case either I come across limitations or support is dropped. I can't create a dependency in my app that could severely cripple me in the future.
It seems like using Pixate would introduce a huge dependency on your application and everything that Pixate does is mapping down to something already done in UIKit or perhaps CoreGraphics. I can understand the allure of this framework because it would save you writing a lot of code yourself but when you come across a limitation (which you undoubtably will because not even the mighty UIKit does everything we need) and you implemented it yourself you can then easily make improvements rather than waiting for a third-party. Sure you could make requests but if Apple honoured every single improvement request on UIKit they would never ship.
As an iOS developer I'm already in bed with Apple but their track record with AppKit and UIKit speaks for itself. Their frameworks are black boxes but I can build upon the shoulders of giants. Third-party UI frameworks like this feel like I am constraining myself to very explicitly defined limitations and the second I cannot adhere to those limitations I must be the one to compromise instead of striking out on my own.
Is there something that I am missing with these third-party UI frameworks because the opportunity cost has always seem to be too high for me.
Just look at the simplicity and familiarity with traditional front-end development. http://www.pixate.com/blog/2012/12/15/table-disclosure/
View Controller:
button.styleId = @"disclosure";
default.css: table-view #disclosure {
background-color: linear-gradient(#75a4e6, #2670d8);
border-radius: 15pt;
border-width: 2pt;
border-color: white;
size: 27pt 27pt;
font-size: 16pt;
box-shadow: 1pt 1pt 1pt #333;
}
If only they had a demo we could test how well Pixate lives up to its claims.Example of use in XCode: http://www.youtube.com/watch?feature=player_embedded&v=h...
https://itunes.apple.com/us/app/pixate-playground/id57867638...
It's also open sourced: https://github.com/Pixate/Playground
.../Playground-master/Playground/PXViewController.m:9:9: 'PXEngine/PXEngine.h' file not found
The framework file is not included...
Danger: Malware Ahead! Google Chrome has blocked access to this page on techcrunch.com. Content from d.adsbyisocket.com, a known malware distributor, has been inserted into this web page. Visiting this page now is very likely to infect your Mac with malware.
EDIT: forgot to include the link instead of just commenting: http://www.pixate.com/
I looked into doing something like this and it seems like a pretty straight forward idea. Map CSS properties to UIView properties. It felt like it was lot of brute force work. Creating a parser and some sort of renderer for every supported UIView seems like the majority of the work.
Building a platform agnostic front end without having to resort to javascript/HTML could be a really useful step forward.
That's when I realized the power of Pixate. My code got a bit more complex having to implement the gradient layers, borders and background images in Objective-C. I ended up migrating it, but Pixtae was definitely a lot simpler.
Jesus! The one valid use case for native apps is games, everything else can be solved with web apps. Why we are going out of our way to re-implement the ease of web development on native apps should fucking tell you something. On top of all this, they want to charge you $199 for it?
Disregarding the topic of whether or not Pixate itself is commercially viable, but it makes me feel like XML-RPC all over again. Wasn't that what HTTP was for in the first place?
We go through all this crap to make making "apps" convenient. Ultimately the answer was in front of us the whole time we were just too stupid to see it. The web will win. SECREST OUT!
> everything else can be solved with web apps.
Key word there is can. You sure cab try and sometimes succeed in replicating native specialized components with html, js and css cobled together, and maybe even to get it to work more or less OK. But why? > the ease of web development
You gotta be kidding. Developing web apps is not easy. Developing cross-platform mobile web apps is even harder. Developing mobile web apps of comparable to native performance is extremely difficult. I wonder is there anyone who after spending some time to properly learn either native SDK still prefers builng mobile apps with the web stack. > The web will win.
The web will win what? Is there a war? A race? What I think will eventually win is understanding what the web is for, what the apps are for and what is the best tool for the job.
Trying to fit a square peg into a round hole cannot win.