In 1959 C.P. Snow's famous lecture, "The Two Cultures", decried the failure of educated people in the sciences and humanities to work together. Today we have a similar divide opening between those who write software for science and those who write it for "everything else". In this talk, we'll review the current state of affairs and look at what Julia might do to remedy the situation. The hope is that Julia can be a great programming language not just for science, but for programmers everywhere.
Joshua Ballanco, Ph.D.
✔ a Scientist
✔ a Programmer
✔ tired from all the Linear Algebra
• 1991 – Learn to program (age 11)
• 1996 – Recompile Linux kernel
• 1998 – Do something with Linux other than recompile a kernel
• 2002 – B.S. in Chemistry
• 2008 – Server Software Engineer at Apple
• 2012 – Ph.D. in Chemical Biology
• 2013 – Software Engineering Consultant
• 2014 – Discover Julia
Scientists vs Programmers
“Yet we should not pass up our
opportunities in that critical 3%.”
“We should forget about small efﬁciencies,
say about 97% of the time: premature
optimization is the root of all evil.”
– Donald Knuth
• Embraces the importance of community
• What about Project.generate()?
• Unicode operators? Brilliant…sometimes!
• “Any fool can write code that a computer can
understand. Good programmers write code that
humans can understand.” – Martin Fowler
• Array indexing
• Arbitrary indexing? Brilliant!
• “1-based indexing…eww!”
• “I don't know how many of you have ever met
Dijkstra, but you probably know that arrogance in
computer science is measured in nano-
Dijkstras.” – Alan Kay