Functional Programming and the Battle for Survival
Startups are hot. They're fun. They're exciting, challenging, and romantic. They're also brutal. Only 1 in 20 startups succeed.
This talk is about how functional programming gives startups an advantage. Because every advantage is critical, in the fight to survive. And then to scale up, and thrive.
Outline/structure of the Session
- Defining a startup
- Product-market fit
- OO to FP
- Modeling business processes
- Verbs vs Nouns
- Domain-driven design
- Secret weapons
- Bottom-up design
- What dynamic means
- Scaling codebases
- Scaling teams
Leverage is important. And in the resource-constrained world of startups, every bit of leverage matters. This talk drives home the point of simplicity, better tools, and building better teams., starting from the foundation of functional programming.
Applying a fresh, simpler approach to solving problems, managing code-bases, growing teams and sub-teams, thinking functionally makes for a smarter approach to managing risk, and tackling explorative, iterative learning.
This talk describes why FP makes for a powerful "open secret weapon" in the startup world.
CEO, CTO, Engineers, Business, Product Managers
schedule Submitted 1 year ago
People who liked this proposal, also liked:
Live Code Jugalbandi
In Indian classical music, we have Jugalbandi, where two lead musicians or vocalist engage in a playful competition. There is jugalbandi between Flutist and a Percussionist (say using Tabla as the instrument). Compositions rendered by flutist will be heard by the percussionist and will replay the same notes, but now on Tabla and vice-versa is also possible.
In a similar way, we will perform Code Jugalbandi to see how the solution looks using different programming languages and paradigms.
During the session, conference attendees will take turns at coding the same problem using different languages and paradigms. There would be multiple such attempts by different participants during the Jugalbandi.
Introduction to OCamlKC Sivaramakrishnan
schedule 1 year agoSold Out!
This tutorial is aimed at people with programming experience. Previous experience with a functional language will be useful but is not required. No prior knowledge of OCaml is assumed.
Why Julia?Viral B. Shah
schedule 2 years agoSold Out!
In this talk, I will talk about our motivation for creating Julia. Julia is a high-level, high-performance dynamic programming language. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library. Julia’s Base library, largely written in Julia itself, also integrates mature, best-of-breed open source C and Fortran libraries for linear algebra, random number generation, signal processing, and string processing. In addition, the Julia developer community is contributing a number of external packages through Julia’s built-in package manager at a rapid pace. This is why Julia is seeing rapid adoption in universities for teaching and research, as well as in businesses.
I will discuss what makes Julia fast. Julia's ability to combine these levels of performance and productivity in a single language stems from the choice of a number of features that work well with each other:
- An expressive parametric type system, allowing optional type annotations;
- Multiple dispatch using those types to select implementations;
- A dynamic dataflow type inference algorithm allowing types of most expressions to be inferred;
- Aggressive code specialization against run-time types;
- Just-In-Time compilation using the LLVM compiler framework; and
- Careful design of the language and standard library to be amenable to type analysis;
I will also touch upon how the language design has made it possible to explore many parallel programming models in Julia, completely within the language.
Introduction to Swift WorkshopDaniel Steinberg
schedule 2 years agoSold Out!
If you are an experienced developer who hasn't had a chance to look at the Swift Programming Language, this workshop is for you.
We'll look at language fundamentals: functions, variables and constants, collections, control-flow, optionals, generics, and closures. We'll look at Swift classes, objects, protocols, structs, modules, and enumerations.
We'll use Swift Playgrounds to explore some of these aspects of the language including the latest additions to Swift 2.0.
Swift is scheduled to be open sourced this fall. You will be able to use it for development on Linux and OS X.
There will be several hands-on portions of this workshop. To fully participate in those, you must have the Xcode 7 beta installed on your Mac.