In reference to your first paragraph, that's all your opinion. You are completely entitled to it and I respect it. My opinion is that this looks awesome and I really want to try it out. Especially since I know Ruby (and C) but I don't know any Obj-C.
As for your second paragraph, you can say that about any '-ists'. I've met java, python and .Net people who all love their respective languages and just want to code in that. To me, Rubyists aren't better or worse in that respect.
Especially since I know Ruby (and C) but I don't know any Obj-C.
Interestingly, from my point of view, Obj-C made perfect sense to me when I realized that it was basically Ruby with C syntax. Given the heritage of Ruby and Obj-C, they come out as very similar languages, so I found it a breeze to pick up the other.
The hard part was learning the Cocoa (Touch) frameworks, but I'm not sure a Ruby API would have made that any easier. It's simply a massive amount of information to take in all at once.
I think you'll find the difference between working with Cocoa APIs in Obj-C vs Ruby is that it's much easier in Ruby to turn what you've learned into a simple, boiled-down, easier to digest set of helper methods/objects/modules.
For example, in using the RubyMotion beta, after I understood the UIView animation flow, I created a helper method using "yield" to do the actual animation. If I were working in Obj-C, it would've been a lot more work to do the equivalent (and I probably would've just copy-pasted existing code around instead).
def animate(*args)
UIView.begin_animation
yield(*args)
UIView.commit_animation
end
animate(myButton, &buttonAnimateBlockFromSomewhereElse)
animate(myView, myOtherView, &genericAnimateBlockFromSomewhereElseWithTwoArgs)
animate do
# Do something locally ignoring args
end
And, yes, you can do the same thing with Obj-C and some creative casts...but it's nicer in RubyMotion! (ymmv)
But what if I want to have my animations in one object, and my elements to animate in another? Yes, you can have an Obj-C method return a block, but you're going to have to do some nasty casting if you want to be able to call those blocks with an arbitrary number of arguments. (That, or box everything up in an NSArray, which kinda sucks.)
I think I'll try and write up a demo app to explain what I mean...
He wants to be able to pass any Proc to his method, and any arguments supplied to the method are yielded onto target. A rough Objective-C equivalent would be something like this:
I would like to see the real-world code too. The frameworks in question revolve around Obj-C-isms, so to see something that completely deviates from those patterns will be interesting.
One of the weirdest, but oft repeated, "criticisms" I hear of Ruby is how much "weird punctuation" it uses. A groundless claim compared to most other languages, though, as this snippet illustrates.
totally agree with you.
just for your statement "I really want to try it out. Especially since I know Ruby (and C) but I don't know any Obj-C.": Would be interesting to really know what is the steeper/longer part of the learning curve: learning ObjC or learning the frameworks. To me, ObjC is a lean language (with an awful bracket syntax just like lisp) but learning the ins and outs of the frameworks is what took me the most time.
Yep - In times when ARC was not invented, memory management took some time to get used to (what with object ownership and such), but you can strike this from the list now. Another thing is that one has to get used to the ObjC way of doing stuff. E.g., Devs who are used to Java will make subclasses instead of categories, add comments instead of expressive method names, and make nil checks where they are not necessary. Or ask where all those open-source projects' unit tests have gone :)
Lies, damn lies and stats. "Apple sold 44% less iPhones last quarter" is technically correct. But last quarter saw around a 150% increase in sales because of pent up demand and the holiday quarter. If you compare this quarter from one a year ago you'll see that sales are actually up.
http://www.macrumors.com/2012/04/24/iphone-activations-drop-...
Also, I call bullshit on the "razor thin margins" that carriers are making. They make plenty over the lifetime of the device contracts. Also, ask Sprint if it would like to get rid of it's iPhone deal. They are getting plenty of new subscribers thanks to the iPhone and are banking on making up their initial loss over time on their new contracts. http://www.networkworld.com/community/blog/analyst-who-downg...
The problem comes in on their aggressive upgrade policies. In fact, I believe Verizon just added a $30 fee for upgrades on 2 year contracts.
Apple's stock is down because the market is full of idiots. Analysts have bet against Apple for years and every quarter Apple has come up on top. I'll bet dollars to doughnuts that this quarter won't be any different and overall sales will be through the roof.
If you think it's that possible then why not contact your congress person/senator and have them look into this? In fact, talk to them about drafting a law against not being able to install software of your choosing on a machine you buy. Or, at the very least, a law for being able to take your data with you when you decide to leave a platform. This wouldn't help China, Iran, Syria, etc. but it would at least give US citizens some protections.
Personally, I'm not very afraid of option 3 ever going away but I also am ready with a FreeBSD VM instance.
I just moved to IN so I need to double check the school system here but I do know about the TN system. My knowledge will vary county to county but in general I think this is true. I also made a comment above but will reprint some of it here.
I'm sorry but, what the hell are you talking about? Many schools require students to have laptops in high school now. Teachers are constantly being told that then need to use more and more technology in their classrooms to better engage their students. If there aren't students who can afford machines then they are given one in class.
My mom is a 7th grade reading/writing teacher in a small (around 18K in the county) west-TN town. Her little school has an ipad cart. Every student does their writing (typing really) on an ipad. Both kids and teachers love it. The news today will probably thrill all of them.
I'm probably going to get downvoted for this but I'll say it anyway: there isn't a tablet market, there is only an ipad market. Apple want to make it easier to make books for ipads because: 1. that's what they sell and 2. that's what people are buying.
A quick aside, my mom is a 7th grade reading/writing teacher in a small (around 18K in the county) west-TN town. Her little school has an ipad cart. Every student does their writing (typing really) on an ipad. Both kids and teachers love it. The news today will probably thrill all of them.
Who cares though. That's like arguing over which paper stock is the most prevalent in the market today and then putting the manufacturer of that paper stock in the driver's seat of the publishing industry.
The iPad rules now.. but maybe net-books will make a miraculous comeback soon. Or maybe some other kind of device will take over.. flexible digital displays? Is there anything sooo complex about a textbook (even a digitally super-duper fancy one) that really can't be done on a platform that will adapt to any device? (aka the internet)
I don't have a Kindle Fire, but I imagine it isn't very useful for textbooks. Thinking back to my school days, textbooks were huge and closer to the size of an iPad than to a Fire. The Fire's screen is great for blocks of text, but it's way too small to clearly display charts and tables.
Dropping the rails router, controllers and rack in favor of something like webmachine and resources could potentially speed up rails and reduce the conceptual complexity as well as the stack depth.
I'm curious, have you looked at http://reneerb.com/? I contend as well that Rails is not well suited to REST. As it stands, I think Renee is about 2x faster than Sinatra.
I like child labor laws. I like food safety laws (http://en.wikipedia.org/wiki/The_Jungle). I like my bank being separate from investment institutions (http://en.wikipedia.org/wiki/Glass%E2%80%93Steagall_Act). I also like education programs, fire departments, police, roads, etc. I pay a lot in taxes and want to keep all of these things (and really have stricter regulations in the banking system).
Our market isn't free enough, that's true, but having a totally free market tends to crush the lower class. A completely free market, after all, is like a force of nature and nature doesn't give a shit about people. I do give a shit about people and am happy to pay taxes to help those people.
Our system isn't perfect and there are a lot of problems with it, but I don't want it to go away completely.
Chip stacking tends to be too expensive. Think of it this way: take the full output from a factory creating chips. Now if you stack just one chip on top of another, you have effectively cut your production in half. It also means that your chips will have to be at least twice as expensive (probably more since demand will be greater since the chips are now more scarce).
I think there is some interesting research work going into chip stacking but it wouldn't be accessible for public consumption until it's cost effective.