@@ -146,3 +146,189 @@ content: |-
146146 you
147147 you
148148 you
149+ speaker_map :
150+ M1 :
151+ name : Mike Hall
152+ role : Interviewer, community organizer at UGtastic
153+ S1 :
154+ name : Dean Wampler
155+ role : Software Architect, Big Data Expert, and Author
156+ turns :
157+ - speaker : M1
158+ text : Hi, it's Mike again with UGtastic. I'm here today at GOTO Chicago 2013 and
159+ I'm again sitting down with Dean Wampler, who is one of those people that always
160+ seems to be ahead of the tech curve and is a fixture here in Chicago. When I was
161+ first getting into AOP it was already old hat for him, and when I was starting
162+ to look at big data his name came up as someone to talk to. But I had already
163+ known you through the community because of your involvement in conferences and
164+ user groups. So how does that work for you? Do you use the community to stay up
165+ to speed on things or are you looking at things and putting those to the community?
166+ - speaker : S1
167+ text : Well I'm sure it's both. I obviously like to talk about what I find interesting
168+ and what I think people will find interesting for solving problems. That's kind
169+ of why I started the Scala user group and have always been active in the user
170+ groups here in Chicago. I think the reason I like to keep up with trends is both
171+ because it's interesting but also because there's a bit of paranoia there. I've
172+ always been a little nervous about growing stale—in part because it gets boring
173+ to do the same thing over and over again, but also because I don't want to eventually
174+ get to the point where I feel like I'm completely out of touch with what's going
175+ on. I think also this is a young industry; we're still learning how to do stuff.
176+ The kind of problems we're solving today are in some ways the same problems we've
177+ always been solving, but oftentimes the scale is a lot different today than it
178+ was, say, 20 years ago when the web first started. So a lot of times it's a sort
179+ of restlessness that there's got to be a better way. Maybe we're getting work
180+ done, but it sure seems to be painful in some respect, so is there a better way?
181+ That's how I see it.
182+ - speaker : M1
183+ text : I think there is a better way. That's how I started getting interested in
184+ AOP as a way of solving problems that we saw in composing systems. It didn't quite
185+ pan out the way I thought it would, but now I've seen that there's a lot that
186+ functional programming brings, in part because the problems we're doing today
187+ are a lot more data-centric and it's really good for that, as well as for concurrency
188+ like multi-core and stuff. And then I just like to be engaged with people, learn
189+ from people, and talk about what I think is a really good way for people to learn
190+ from each other.
191+ - speaker : M1
192+ text : ' I had forgotten about the Scala group. A little note for the audience: you
193+ had spoken at a Chicago Code Camp and my wife—who is not a programmer—sat in your
194+ session. She wanted me to become a programmer and she took extensive notes because
195+ you explained it in a way where she was able to grasp it. It actually helped us
196+ in our conversations.'
197+ - speaker : S1
198+ text : I'm a marriage counselor.
199+ - speaker : M1
200+ text : Yeah, you're a marriage counselor! Because now she understood a little bit
201+ better the problems that I face and what programming is. I'm just curious—Scala
202+ was 'the next big thing' for a little while for functional programming before
203+ Clojure really got its legs. Are you still in the Scala space, or have you moved
204+ on to other languages?
205+ - speaker : S1
206+ text : No, I'm still a big fan of Scala and a big fan of Clojure. To be honest, I'm
207+ a little torn between the two; I think they both have various strengths and weaknesses.
208+ I still do a lot of Scala because it's a great toolbox for me that fits the way
209+ I like to program. It does all the functional stuff and has some really nice extensions
210+ to object-oriented programming compared to Java that address some issues that
211+ Java wasn't good at. I recommend people try to become familiar with both if they're
212+ looking for another language so they don't just grab the first thing that comes
213+ along and fail to appreciate other options. A lot of times these things come down
214+ to personal preferences, but some languages are better than others for certain
215+ problems.
216+ - speaker : M1
217+ text : You've moved between AOP, Ruby, Scala, and now Big Data. These are different
218+ communities. Have you made any observations about moving between these groups—how
219+ they approach topics or share information?
220+ - speaker : S1
221+ text : That's an interesting question. One thing that comes to mind is that you typically
222+ see Ruby more in feature-rich website development; Rails really drove that Ruby
223+ popularity. There's sort of a culture that goes with that—people that are maybe
224+ more visually oriented, more aesthetically oriented, and Ruby is a beautiful language
225+ to work with in that regard. I sort of got out of that community, at least as
226+ far as active involvement, because I wanted to get back into more server-side
227+ general development for more scalable systems, and that meant going back to the
228+ JVM. That's about the time I started to really get into functional programming,
229+ learned about Scala and Clojure, and then ironically I did a lot of Hadoop consulting
230+ recently as part of the big data space. In a way that was a deliberate movement
231+ because I did physics in school and there was a lot of math I hadn't used in a
232+ long time but liked doing.
233+ - speaker : M1
234+ text : So what's 'the next big thing'?
235+ - speaker : S1
236+ text : That's a really good question. I talked a little bit about this in my talk
237+ the other day, mostly in the context of big data. I do think that functional programming
238+ is going to see more widespread adoption. Even though a lot of people have talked
239+ about the multi-core problem—how do we write robust concurrency code—as the driver
240+ for functional programming, I actually think more developers are going to run
241+ up against a wall trying to do data problems. If they write Hadoop apps or use
242+ some other tool, functional programming is a better fit there. The other trend
243+ I'm starting to see is more specialization in that space—probabilistic models
244+ used for machine learning and predictive analytics. Like when Netflix recommends
245+ something and it actually looks like something you'd be interested in; there's
246+ a predictive model going on behind the scenes. Making that technology easier to
247+ use for people who aren't experts is a specialization I see happening.
248+ - speaker : M1
249+ text : Your presentations seem to follow what you're passionate about at the moment.
250+ Is that an intentional push or pull—are you following what's interesting or are
251+ you digging deep to force yourself to learn?
252+ - speaker : S1
253+ text : It's funny you ask that, because there have been times when I proposed a talk
254+ on something I really didn't know a whole lot about, but it was a motivator to
255+ force me to make the time to learn it. But in general, I try to talk about stuff
256+ that I have legitimate experience in and feel like I can offer some wisdom to
257+ help other people avoid mistakes. I do like public speaking and teaching; it's
258+ rewarding to talk with people about what seems to be working and what we should
259+ be doing instead.
260+ - speaker : M1
261+ text : As an experienced speaker, do you have a process for preparing your talks?
262+ Are you a 'slides-first' guy?
263+ - speaker : S1
264+ text : I guess I am a slides-first guy in terms of preparing them. I've done enough
265+ now that I don't really rehearse them much, and sometimes they're a little rough
266+ around the edges or rushed. I've tended to have more material than less, so I've
267+ had to develop an intuitive feel for how long I want to spend on each slide. Slides
268+ are a great outlining format; I'll start with a rough outline that way and then
269+ flesh it out as I go.
270+ - speaker : M1
271+ text : Okay well thank you very much for taking the time, Dean. I appreciate it.
272+ - speaker : S1
273+ text : Thank you very much. Thanks.
274+ insights :
275+ - statement : The fear of 'technical staleness' acts as a critical motivator for seasoned
276+ developers to move toward the technological frontier, preventing professional
277+ stagnation.
278+ type : durable
279+ confidence : high
280+ - statement : Functional programming's primary path to mainstream adoption is likely
281+ driven by data-scale challenges (e.g., Hadoop, Big Data) rather than purely concurrency
282+ concerns, as data problems force developers to confront the limitations of traditional
283+ imperative models.
284+ type : durable
285+ confidence : high
286+ - statement : ' Technical communities often form distinct cultural '' personalities''
287+ based on their primary use cases: Ruby/Rails attracts aesthetically and visually-oriented
288+ developers, while the JVM attracts those focused on server-side scalability and
289+ system architecture.'
290+ type : durable
291+ confidence : medium
292+ - statement : Public speaking can serve as a powerful 'learning catalyst' by forcing
293+ an expert to formalize their knowledge under the pressure of a deadline and a
294+ public audience.
295+ type : durable
296+ confidence : high
297+ - statement : Predictive analytics and machine learning represent a shift toward specialized
298+ technical domains becoming accessible to generalist developers through better
299+ abstractions and tools.
300+ type : time-bound
301+ confidence : high
302+ youtube :
303+ title : ' Data over Concurrency: Dean Wampler on the Real Driver for Functional Programming
304+ | GOTO Chicago 2013'
305+ description : Mike Hall sits down with Dean Wampler, author and Big Data architect,
306+ at GOTO Chicago 2013. They explore Dean's journey from Aspect-Oriented Programming
307+ (AOP) into the world of Scala, Clojure, and Hadoop. Dean shares his insights on
308+ why the data-processing wall is a bigger driver for functional programming than
309+ multi-core concurrency, the cultural differences between Ruby and JVM communities,
310+ and the 'restlessness' that drives technical innovation.
311+ tags :
312+ - Big Data
313+ - Functional Programming
314+ - Scala
315+ - Clojure
316+ - Hadoop
317+ - Software Architecture
318+ - GOTO Conference
319+ - Software Craftsmanship
320+ chapters :
321+ - timestamp : ' 00:00'
322+ title : Introduction and the Fear of Technical Staleness
323+ - timestamp : ' 01:45'
324+ title : From AOP to Functional Programming
325+ - timestamp : ' 03:30'
326+ title : ' Scala vs. Clojure: Choosing the Right Tool'
327+ - timestamp : ' 05:00'
328+ title : ' The Cultural Split: Ruby vs. JVM Ecosystems'
329+ - timestamp : ' 06:45'
330+ title : ' The Next Big Thing: Specialized Data Models'
331+ - timestamp : ' 08:30'
332+ title : Public Speaking as a Learning Motivator
333+ - timestamp : ' 10:00'
334+ title : Slide-First Preparation and Speaking Intuition
0 commit comments