Mal Curtis works at Learnable as a Rails developer. He spent most of his 10 years in Web Development as a PHP developer, but saw the light. You can check out some of his projects at GitHub

Mal's articles

  1. BuildMobile: Wicked iOS Range Slider: Part Two

    In part one of this mini series, we tackled the question of implementing a slider when you want to create a range of values, not just one. If you haven’t read part one, you’ll be feeling a little bit lost so I advise you go and check out iOS Range Slider: Part One . Still with us?

  2. Wicked iOS Range Slider: Part Two

    Continuing his development of an iOS Range Slider, Mal Curtis takes his project so far, and improves it by allowing the code to respond to changes in the slider values and checking usability against Apple’s Human Interface Guidelines.

  3. BuildMobile: Wicked iOS Range Slider: Part One

    One of the commonly used iOS controls is the slider control. It’s a great, all purpose slider, that allows you to quickly swipe your finger along the screen to set a value. Things get a little complicated when you want to create a range of values however. The options are somewhat limited.

  4. Wicked iOS Range Slider: Part One

    Mal Curtis of Learnable fame flexes his iOS skills in the making of a wicked range slider. Not content with the standard slider, Mal shows us how to create a slider that will control not one but two values, a minimum and a maximum. Settle in for part one of the wicked range slider tutorial.

  5. RubySource: Ruby Devs – You’re too trusting. Gems could screw you.

    Have you met the developers of all the Gems you’re using? Do you know their personal stance on security and whether they use strong passwords or reuse their pet’s name on every website? Artists Rendition: Me deploying I don’t know if I’m the only one, but when there are updates to my Gems, I will generally happily update them – run my tests – and be on my merry way. I raise my sword and shout ‘Deploy!’ to my many underlings (well, I type a few commands and deploy – but that sounds nowhere near as impressive)

  6. BuildMobile: All Purpose Loading View for iOS

    Loading screens are a necessity of digital life. It’s important to provide a user with feedback when you start a process for which your application has to wait for a response. If a user presses a button it’s important they know that the action they’ve taken has been acted upon. Today I’m going to show you how to make a reusable loading screen with an activity indicator (that’s one of those spinner things) and a gradient background

  7. All Purpose Loading View for iOS

    Mal Curtis explains the importance, nay necessity, of loading screens in the digital world. Using the basic iOS development skills you have learned so far at BuildMobile, here you can step through a common design pattern to implement the Spinner.

  8. RubySource: Confessions of a Converted PHP Developer: Namespace Superhero!

    The moment you start writing code that grows beyond a few classes, you start to realise that you need a way to group files and logic. While this is easy to do, it can become quite difficult to ensure that you have class names that are unique and don’t end up accidentally clashing with other classes in your own code, or classes in other people’s code that you are using. Namespaces! That’s What You Want.

  9. RubySource: Confessions of a Converted PHP Developer: Animal Abuse

    Sometimes the functionality of a library or set of classes that you’re working with is 99% perfect for the job, but the last 1% requires modification of some of the core assumptions made in the code. Altering code can cause maintenance frustrations down the track and extending code can cause maintenance frustration right away, but Ruby provides us with a flexible way to modify code with less damage. In converting to Ruby I realized how strict PHP is in its class hierarchy.

  10. Boost your PHP Performance 50% with HipHop

    Facebook’s soon-to-be-released PHP “code transformer,” dubbed HipHop, promises performance gains of up to 50% by transforming PHP source code into compiled C++. Mal gives us the lowdown on this exciting development in the PHP world.