Flying Solo: Lifehack Your Way to a Pants-Optional Workplace
Many developers harbour the dream of throwing off the shackles of corporate serfdom and experiencing the glorious freedom of self-employment. So is the grass really greener on the other side? As a developer who took the plunge a few years ago, I can offer some honest feedback and practical advice on things like:
- what to consider when assessing whether self-employment is right for you.
- the different software development business models, the pros & cons of each.
- setting up a business/company - which structure is best.
- knowing when to quit your job.
- pricing yourself correctly.
- sales & marketing - critical activity or soul destroying waste of effort?
- why on earth can’t people just pay you on time.
- what to say to friends and relatives who think you don’t do anything all day.
And generally everything else that I know now, that I wish I knew then.
Outline/Structure of the Case Study
Slideshow & more bad dad jokes. I’d flesh out the talk outline here but we all know I haven’t written it yet. The goal is something fairly light-hearted, but with a lot of useful advice; the stuff I would have liked someone to tell me years ago.
Learning Outcome
Attendees will either walk out with a solid plan of attack for starting their own business, or thankful they have a job and don’t have to deal with that rubbish.
Target Audience
Anyone who’s considered striking out on their own.
Video
schedule Submitted 5 years ago
People who liked this proposal, also liked:
-
keyboard_arrow_down
Justin Mclean - How to become an IoT developer (and have fun!)
45 Mins
Talk
Intermediate
I started off my life as a developer writing machine code and C and working on some low level hardware projects. Then this thing called the internet come along and I moved into the web application space for a couple of decades. More recently I've moved back into commercial IoT development and not unexpectedly a lot has changed over that time.
In this talk I'll cover what it's like developing IoT projects. I'll go over the tools you need and protocols you need to be familiar with. I'll look at how the C language has evolved to what it is today and and how to write code that works well on memory constrained devices. I'll go over producing prototypes, rapid development, debugging and testing embedded applications and what and how much electronics you should learn.
In short everything you need to know in becoming an IoT developer and have fun doing it.
-
keyboard_arrow_down
Luke Sleeman / Marc Edwards - Build Better Android Apps with Vector Assets
45 Mins
Talk
Intermediate
There are many advantages to using vector-based assets in your Android apps — smaller binary size, faster loading, easier support for all pixel densities, dynamic drawing, and more ways to animate. Despite the upsides, SVGs and VectorDrawable assets are more complex to author and use.
Luke and Marc explore everything needed to create, export, and implement SVGs and VectorDrawables on Android, including common issues and their remedies.
-
keyboard_arrow_down
Andrew Harvey - They're Good Dogs: A Gentle Introduction to Machine Learning with CoreML and Vision
45 Mins
Talk
Intermediate
At WWDC this year, Apple announced their CoreML and Vision frameworks. These allow you do easily implement machine learning models inside your app, running on the GPU on an iPhone. Suddenly a world of machine learning is possible in ways that it wasn't before.
In this talk, you'll see a real world example written in just hours which implements a freely available object classification model to find out who is a good dog. Silly as this sounds, it shows the power now at our disposal.We’ll look at what you need to do to build a simple app, and then dig into some of the innards of machine learning to see what we need to do to create something really useful.
-
keyboard_arrow_down
Cameron Barrie - Designing for a unknown future
50 Mins
Talk
Intermediate
As the future approaches us more and more rapidly, we feel the impact of the choices we make today sooner and with more force. This talk offers practical advice on how to drive and deliver value to a business continuously by building systems that scale to the needs of a business working towards an unknown future.
-
keyboard_arrow_down
Samantha Connelly - Robots and Testing
30 Mins
Demonstration
Intermediate
How can you use robots to help you test?
Meet Tappy McTapFace, Tappy is a robot that was built during a 2 day hackathon to help demonstrate how robots could be used to automate testing on mobile apps. It's made out of 3D printable parts, based on Taptser 2.0 open source designs and can be programmed in javascript.
You could also use a robotics challenge to engage your team around testing ideas. Sam will give her insights from running multiple testing challenges that engaged over 100 software engineers. From a lunch time robotics challenge to a company wide bug bash. Sam has run many events that help raise a companies testing culture. -
keyboard_arrow_down
Sam Ritchie - Using the Elm Architecture in Swift
45 Mins
Talk
Advanced
Elm, for a long time the flag bearer of Functional Reactive Programming on the web, recently switched to a simpler pure functional architecture, citing 'ease of use'. Those of us that have worked on complex RxSwift/ReactiveCocoa apps can sympathise with this - using FRP injudiciously in your app can make the code difficult to understand and near impossible for new developers to pick up.
So are we able to apply some of the techniques and patterns from Elm into Swift iOS apps? It turns out the Elm architecture is a really great fit for Swift - it allows us to:
- reserve our FRP hammer for the use cases that make the most sense
- separate out a simple, consistent, and highly testable pure functional core, and
- provide a flexible, yet easily understood & applied set of architectural building blocks.
This session will cover the basics of implementing and using an Elm-style architecture in a Swift app, will include lessons learnt in a real-world implementation, pitfalls/benefits, and implementation considerations should you adopt the approach in your own app.
-
keyboard_arrow_down
Anne-Marie Charrett - How to reduce the cost of software testing
45 Mins
Talk
Intermediate
Let's face it, most of us have done pretty lousy job when it comes to software testing. It's no real surprise, software testing is hard. In fact, I believe its one of the tougher challenges in delivery product. Software Testing is expensive! Every test has a cost in design, building, execution and maintenance. Resulting work from finding bugs can blow out any on track project. In an attempt to reduce the cost of software testing, we've resorted to outsourcing and/or test automation. However, this hasn't given us the gains we had hoped for. We still have expensive, brittle, hard to maintain tests that typically take to long to execute and seem to offer little value. What's more, faced with shorter delivery times and the need to experiment rapidly, we simply cannot afford to have long testing lifecycles.
What are we doing wrong, and more importantly, what can we do to fix it?
This talk looks at Quality Engineering to reduce dependency on software testing, create faster feedback loops and build product in a more robust way despite uncertainty. A quality approach that allows teams to remain flexible and reactive to change.
It explores Quality in four key areas, Product, People, Practice and Technology. Using the concepts found in Lean and Context Driven Testing it describes how we can improve quality by reducing waste in our systems in a way that is valuable to a team.
It also explores the topic of metrics in relation to quality. Many of us in quality have been burnt by metrics in the past. Test case counts and test coverage have done little to help improve quality and have done a lot to develop undue process that inhibits rapid change. Is there a way we can explore metrics at a team level to help us make informed decisions?
As 'Quality everyone's responsibility', this talk is for everyone, heads of engineering, architects, developers, testers and ops. This talk dispels myths around testing and quality and provides a practical way forward to improving quality in your teams.
-
keyboard_arrow_down
John Bristowe - The State of Mobile App Development: Past, Present, and Future
45 Mins
Talk
Intermediate
The mobile app development landscape is filled with a mixture of platforms, tools, frameworks, libraries, development strategies, and runtime environments. Sorting through it all is a daunting task. Picking the wrong platform, technology, and/or strategy can spell disaster for your mobile app projects.
Having a solid understanding of what’s required for mobile app development helps. However, knowing what the rest of the industry is using – now and in the near future – enabled you to make an informed decision when it comes to tackling your next mobile app project.
This session will examine the state of mobile app development: past, present, and future. We'll explore what developers are targeting today and forecast what they’ll be targeting in the next 12-18 months. We'll examine industry trends and provide a detailed analysis of the options available: the good, the bad, and the ugly. We'll look at tools and runtime environments. We'll even get our hands a little dirty with some code. You'll walk away with a clear understanding of where we're at and where we're headed.
-
keyboard_arrow_down
Barry Scott - The Joel Test - Mobile Edition.
30 Mins
Case Study
Intermediate
Aeons ago, in the year 2000, Joel Spolsky proposed the Joel Test, a set of questions that he recommends all software development teams should be able to answer “yes” to, in order to help them build great software.
This talk takes a look at these questions through technical, people, and process lenses, to see if they are still relevant in software development today. It investigates whether we should add any new questions, given the changes that have occurred in the industry in the last 17 years. And looks in to changes to these questions to make them more relevant for development of mobile products.
-
keyboard_arrow_down
Calum Gathergood - React Native: Building shared components for Android and iOS
30 Mins
Case Study
Intermediate
This talk discusses how Domain implemented React Native Components in their native Android and iOS apps.
It will cover a brief history of React Native and the lessons learned whilst implementing shared components into existing codebases. Comparing and contrasting development environments of Android, iOS and React Native whilst discussing working together with both Java, Swift and Javascript. Topics include the React ecosystem, modern Javascript development and managing multiple components within a monorepo.
In addition to the technical aspects, the talk will discuss the impact of React Native and what it means for developers. Bringing forth the question of whether the cross-platform ideology of ‘write once, run anywhere’ is the future of mobile development.
-
keyboard_arrow_down
Simon Wade - Culture vs. Central Planning
45 Mins
Talk
Advanced