======================================================== ** WE ARE HIRING *** Interested in working for one of the most innovative mobile app companies on the planet? Check out www.grindr.com/jobs and contact: firstname.lastname@example.org ======================================================== In case you missed our last meet up, Lukas Sliwka, Grindr's VP of Engineering, discussed architecture strategies being employed to ensure high availability and scalability of the Grindr 8 million+ user platform. This month, Lukas and the Grindr iOS Team will be focusing on: Implementing Test Driven Development, Unit Testing and code metrics when building mobile iOS applications. What you will learn: 1) How to implement Unit Testing in Xcode using IOC Container - iOS Development Team will be going into code level giving an overview of dependency injection mechanism facilitated by Typhoon container. In addition, they will do a code walk through unit tests employing the IOC mechanism. 2) How to cleanly manage dependencies in Xcode - iOS Development Team will showcase and discuss the usage and configuration of CocoaPods dependency management framework. 3) How to setup Continuous Integration environment enforcing Xcode code quality metrics - Release Management team will discuss and present Grindr’s Xcode Jenkins build pipeline with its continuous integration and code quality metrics. About the Presenter: Grindr’s VP of Engineering, Lukas Sliwka is a thirty-something technologist who's lived and worked in many different places around the world including Europe, Canada, and both coasts of the US. Lukas has a background in software engineering, agile methodologies, and agile transformation. He loves the disruptive nature of technology and seeks any opportunity to change the status quo. He recently joined Grindr to further its geo-social mobile platform and how it impacts the dating world. Lukas has also held key roles at Beachbody, Yamaha, and Mazda.
Test-driven development is a method for testing and refining code. Find out more about TDD in this tutorial. Watch more at http://www.lynda.com/Developer-Programming-Foundations-tutorials/Foundations-Programming-Test-Driven-Development/124398-2.html?utm_campaign=QCif_-r8eK4&utm_medium=viral&utm_source=youtube. This tutorial is a single movie from the Foundations of Programming: Test-Driven Development course presented by lynda.com author Simon Allardice. The complete course is 1 hour and 50 minutes and shows how to prove your code is working using a formalized test-driven development process. Introduction 1. Introduction to Test-Driven Development (TDD) 2. Getting Started 3. Working with Tests 4. Individual Techniques 5. Additional Topics Conclusion
Test Driven Development is the practice of writing an automated unit test to test your code BEFORE you write your code. This module explores how to do test driven development -with examples. Test driven development can be done in almost any language, and there are many different tools you could use, but for the sake of simplicity we do the whole demonstration in C#. Presenter: Phil Webb
I highlight the key differences between the two testing methodologies. Links: Hanselminutes: http://www.hanselminutes.com/294/understanding-bdd-and-nspec-with-matt-florence-and-amir-rajan Cucumber: http://cukes.info/ ApprovalTests (my verification framework): http://www.approvaltests.com twitter - https://twitter.com/llewellynfalco blog - https://llewellynfalco.blogspot.com/ Also checking out my conferences: EuropeanTestingConference: http://europeantestingconference.eu/ Mob Programming Conference - http://www.mobprogrammingconference.com/
"I know I should write some tests, but I can't afford the time. I have to get this feature out the door." That's absolute crap, friends, and if you hear someone say it you should slap them. Yes, tests provide a measure of code reliability at the apparent cost of extra work. But 'tests' and test-driven development are not the same animal. TDD (or BDD) is a process that will deliver not just superior code, but massive accrued time savings over the life of your project. With experience, it will also provide immediate time savings in almost every case: when you're doing it right, it's usually faster to write the tests and the code than just the code. I'll explain the difference, and walk through some concrete examples. I'm a lifetime geek/hacker/engineer/scientist and obsessive creative, with a touch of evil capitalist. A few years ago I left science for a while to turn my web development hobby into a career, and founded Logical Reality Design, Inc. LRD is a webdev contracting firm with a distributed workforce of L.A. area locals. We've done all sorts of work for all sorts of clients, but lately have specialized in startups, code rescue, and Ruby on Rails development.
A description of what test driven development is. With an example using the Java Eclipse IDE. The example is the creation of a palindrome checker through TDD.
What, exactly, is Inversion of Control? Most commonly used in reference to Dependency Injection or Dependency Inversion (the D of SOLID). Inversion of Control is a programming methodology where objects are given information about other objects in the system without having to create or control them. This is mostly done with either abstractions or interfaces (again the D of SOLID). As you will see in this video, we begin with a simple procedural example and begin looking at how we change who creates the Data-access layer and how the User class knows about it. All of this is done with the desired end goal of keeping the functionality of a class limited to only what the class should be doing. http://en.wikipedia.org/wiki/Inversion_of_control http://joelabrahamsson.com/inversion-of-control-an-introduction-with-examples-in-net/ http://www.codeproject.com/Articles/592372/Dependency-Injection-DI-vs-Inversion-of-Control-IO http://en.wikipedia.org/wiki/Solid_(object-oriented_design%29
People complain that examples of test-driven development for iOS are too trivial, so here's a non-trivial example. You'll learn dependency injection, useful tools, and the 3-step waltz of Test Driven Development. Join the discussion here: https://qualitycoding.org/objective-c-tdd/
In this unit testing screencast for Swift developers, we explore how to use Test Driven Development to verify method calls. A full transcript, along with the example worked through in this screencast are available at http://www.andrewcbancroft.com/2014/12/22/swift-unit-testing-verifying-method-calls/
Mobile apps are something that you interact with on a very personal basis. You carry them around in your pocket, check in with them frequently, and really let them into your life. Danilo Campos is the developer and designer behind beautiful mobile apps for iOS including Hipmunk and Level Money. To give us an inside look at how he works, Campos invited TechCrunch TV into his San Francisco apartment, where he currently works as a freelance developer of iOS apps for a variety of clients. Subscribe to TechCrunch today: http://bit.ly/18J0X2e Inside Jobs is a weekly series that explores popular job titles in Silicon Valley and exposes the people who make the tech industry tick. For more episodes, click here http://goo.gl/mRoOcB Videographer: John Murillo Producer: Felicia Williams Reporter: Colleen Taylor