How to speed up TDD flow with iOS and Objective-C/Xcode - iphone

Have been searching for experiences on TDD with Objective-C and iOS development.
Previous post about "string calculator"-kata in Objective-C was useful (thanks).
But it would be nice to learn even more fluent iPhone-TDD.
Do you have some experience of how to use UISpec (based on Rspec), iCuke (based on cucumber) or similar tools?
And if you also have got the flow going with autotesting (autoiphonetest.rb) like Paul did in his his blog, it would be very interesting feedback.
Here is a good post: Test Driven Development in Objective-C with MacRuby

I found the following screencast pretty useful http://vimeo.com/9394596 to get started.

Perhaps this helps: http://pragprog.com/magazines/2010-07/tdd-on-iphone-diy

Related

What should i use webgl framework?

I want to use webgl framework. But as a beginner I don't know much about this.
I examined GLGE, Three.js, SceneJS.
So, I have following questions:
Do GLGE use Scenegraph?
Why ThreeJS have active discussion?
What is my best choice?
I want to choose the framework of good condition.
You could look at Which WebGL framework should i learn?, but the answer to "what is the best choice?" or "what framework is in good condition?" is still changing pretty rapidly, so that answer may no longer be very helpful.
I can say that Three.js has lots of cool demos, is pretty widely used, and is actively maintained. But its API is still changing a lot, and is not documented well.
If you just want to visualize data in 3d, you should look at the X toolkit ( http://goXTK.com ). It provides a very simple API and only little overhead.
If you want to develop a game, Three.js is the way to go.. :)
For disclosure, I am part of the XTK developers team.

Has anyone had much success recently using the Cappuccino Framework?

I'm just creating my first project in Cappuccino without a lot of success. Looking for examples and documentation, there isn't a lot out there...
The differences from real Objective-C and the lack of libraries mean you cannot easily convert code directly from say a OS X desktop app. to Cappuccino.
As an experienced PHP, and RoR developer (besides the Java, VB, VC.....) I can't quite see the logic of abstracting/wrapping JavaScript in another language.
Any comments or suggestions for a more efficient framework?
If you have specific questions that can't be answered in the IRC channel (it just depends who's in there) you should post the question to the mailing list and someone will help you.
As for why you would want objective-j I'll point you to this blog post which contains several reasons why objj exists. http://cappuccino.org/discuss/2008/12/08/on-leaky-abstractions-and-objective-j/
I have converted several Objective-C classes nearly line for line into Cappuccino. Mostly it's a matter of changing NS to CP and changing pointers to non-pointers. What differences between Objective-C are you thinking about?
Indeed you could even take your existing XIB files from your Cocoa desktop app and convert them to Cappuccino using nib2cib. Here's how to work with Interface Builder using XCode 4: http://groups.google.com/group/objectivej/browse_thread/thread/786331dbcbc9c7b1.
I also recently started a project in Cappuccino and what I could say is: definitely it worth it. I'm used with javascript as well as (but less) cocoa (which helps). In short, the javascript is very fine, probably one of my favorite language because of it's flexibility. But it does lack of structure. For example there is no class in javascript and you have to trick with object inheritances, prototyping and so on. By using the Cappuccino framework at first you have all those very convenient facilities but also you do not reinvent the wheel each time. This is cross browser standardized so that you only have to focus on your code and not on the IE whims. As it is based on cocoa, cappuccino also comes with the MCV scheme in mind which again let you structure your project in an efficient way.
Ok you probably already know all this. What I could tell now about the learning curve is that I had to find the right tools to really get in. i.e.Installing cappuccino (sudo Starter/bootstrap.sh), creating a simple nib application (capp gen -t NibApplication YourApplication) then using xcodecapp-cocoa to listen, convert and open the project into Xcode what probably the hardest part of this learning curve to me…
Now if you are still not satisfied with cappuccino, I can only suggest to look at another framework like http://javascriptmvc.com/ , www.grooveshark.com used it to do their amazing webapp-site but I personally would never go back to html for building a web application. (conversely I would not use cappuccino for a webpage neither, "The cobbler should stick to his last")
I began writing cappuccino a couple of months ago and had a lot of difficulty when it came to setting up the proper development environment. I also had numerous problems writing working client server code that worked well.
I eventually broke through and started doing better with Cappuccino and then I found these video tutorials that would have helped so much earlier on. They did cost me $30 but I really wished I had watched these at the start because they help you get set up properly as a developer and get you started on the right learning curve.
I actually discovered these videos when using Cappuccinos IRC which has helped me a couple of times when I couldn't find an answer.
Info on the videos here: http://cappuccino.org/discuss/2011/10/19/cappuccino-training-course-ideveloper-tv/

Good Scala introductory article/video to whet the appetite

What are some good online articles or videos you've seen that would be most likely to get a developer interested in Scala? I'm looking for an introduction that is brief & to the point that dives right into example code, and would leave a developer who does not know Scala wanting to learn more about it.
Try in this order:
Pragmatic Real-World Scala - This video shows off all kinds of things that would make a Java developer drool.
Programming In Scala - This is simply a great general-purpose programming book. In addition to being a gentle, clear introduction to the language, it's also a fantastic introduction to functional programming concepts and language design. Even if you hate Scala,
this book will make you a better programmer.
Scala For Java Refugees - Very well-written mostly gentle introduction to major Scala concepts.
Another tour of Scala - A Java-centric breakdown of fundamental Scala features.
i went to this talk, it was excellent. can't tell if it is still there due to our internet restrictions, if it's not i'll delete this post.
http://powerhost.powerstream.net/008/00102/100203Scala.wmv
I'd go straight to the horse's mouth, the Scala website itself: Code Examples.
http://www.escalatesoft.com/screencasts
Escalate software is in the process of creating a series of screencasts for Scala information sharing and training purposes. The first available screencasts are provided here for free and cover the new features of Scala 2.8. In the longer term we will create training materials in the form of these videos along with supporting material that will be for sale from this and other sources as well.
http://blog.jaoo.dk/2009/03/09/an-introduction-to-the-scala-programming-language-by-bill-venners/
Take a look at the following presentation by Jonas Bonér (a well known figure in the Scala community, responsible for the AKKA actors concurrency framework). I'm sure this will whet the appetite for Scala.
http://www.infoq.com/presentations/Scala-Jonas-Boner
german introduction, maybe useful for you: http://www.rheinjug.de/videos/gse.lectures.app/Player.html#Scala
I would recommend Chapter 1. Zero to Sixty: Introducing Scala of the Programming Scala book by Dean Wampler and Alex Payne. The rest of the book is also great. The book is freely available online.
EDIT
I recently bought and read the Atomic Scala book by Bruce Eckel and Dianne Marsh. This is the best book I have read so far for anyone wanting to learn Scala.

Objective-C Coding Standards [iPhone/Cocoa]

Are there any generally-accepted coding standards (naming, casting etc) that apply specifically to iPhone/Cocoa/Objective-C? I know Microsoft has published similar standards as they relate to .Net and C# but haven't run across anything related to the iPhone world.
Introduction to Coding Guidelines for Cocoa
Enjoy!
Also take a look at Cocoa Style for Objective-C from Cocoa Dev Central
Part I
Part II
Google also has an Objective-C style guide
The Code Commandments: Best Practices for Objective-C Coding is a style guide I can happily endorse.
Here are two more Objective-C style guides:
GitHub
NY Times

Beginner guide to OpenGLES on iPhone

Does anyone know a good beginners guide to using OpenGLES on the iPhone? I have found some but they all require assumed knowledge which I don't have.
Simon Maurice has some great tutorials on the very first steps. Take a look: http://www.cocoachina.com/wiki/index.php?title=Category%3aSimon_Maurice_iPhone_OpenGL_ES. Do them from the beginning and you'll have a good sense of the basics.
EDIT:
Backup link
Source code
You need only one reference:
http://www.khronos.org/opengles/sdk/1.1/docs/man/
Yeah, some of the documentation doesn't make a lot of sense the first time you read it, but really, read the sentence/paragraph/page again, and again. It really does make sense, and it's very accurate. Which is something you really can't say from tutorials. Tutorials are almost always written by people that don't seem too fussed about leaving out important details while documentation like that is usually written by very nitpicky people that cram every little important fact into (possibly overly-complex) sentences.
Oh, and one golden tip: Add a search function to your browser that does this:
http://www.google.com/search?q=%s+site%3Awww.khronos.org%2Fopengles%2Fsdk%2F1.1%2Fdocs%2Fman%2F&btnI
(replace %s by whatever your browser's search term replacement string is, the above example is for Opera)
I've bound it to the o prefix, so whenever I need to look something up on OpenGL/ES, I just type o glDrawElements in the address bar and instantly get the documentation page on it.
Once again, if I may plug my own work, I have a short writeup on what I learned while writing Molecules for the iPhone. I came into this having no experience with the 3-D side of OpenGL (I had done a little 2-D hardware acceleration before), so I have a bit of a different perspective on the subject. The source code to Molecules is available, so you might be able to learn something from poking around inside it. I also have written a post on how to use Core Animation structures and functions to accelerate OpenGL ES rendering, if you want something a little more technical.
Bill Dudney has a post here about how he started getting into OpenGL ES, and then a follow-on here where he provides code for a Wavefront OBJ loader for the iPhone.
I believe that I've seen a few more good resources around Stack Overflow in various answers, so you might search around and see what else you can find here.
For OpenGL NeHe is a great tutorial. Though, it doesn't specifically cover OpenGLES, it should still be pretty helpful. Just be prepared to run into things now and again that won't work on the iphone.
Also you can get v1.1 if "The Red Book" online.
Simon Maurice's tutorial can be found here
"The Red Book" is not recommended to OpenGL/OpenGLES beginner. It is book for professionals.
The first step is should try to run downloaded simple programs or simple codes from OpenGL web sites.
Here's a good (non-Chinese) link to Simon Maurice's tutorials:
http://web.me.com/smaurice/iPhone_OpenGL_ES_Blog/iPhone_OpenGL/Archive.html
His tutorials are excellent; they're what I used to learn OpenGL ES.
In addition to "The Red Book", another useful book -with tutorials and reference- is OpenGL SuperBible.
Again not OpenGLES specific, but I believe it is useful to learn OpenGL features in general, then filter out the ones you don't need.