digitalmars.D - Presentation Intro to D: What works?
- qznc (11/11) Jun 25 2015 Looks like I will give a talk about D to our local Functional
- Joakim (9/21) Jun 25 2015 Never done an intro but watched several and have been thinking
- rsw0x (6/18) Jun 25 2015 If it's a functional programming meetup, show off D's ranges
- Rikki Cattermole (4/25) Jun 25 2015 irk be careful when showing off ranges. Get some damn good background of...
- Chris (7/19) Jun 26 2015 Depends on where the newbies are coming from, C, C++, Java,
- "Marc =?UTF-8?B?U2Now7x0eiI=?= <schuetzm gmx.net> (7/19) Jun 26 2015 As these are FP people, I would start by pointing out that D is
- qznc (14/18) Aug 19 2015 Presentation done. Only six people in the audience, but they
- yawniek (2/13) Aug 20 2015 i like these slides a lot, has the talk been recorded?
- qznc (2/17) Aug 20 2015 No. Sorry.
- tired_eyes (5/24) Aug 21 2015 The slides are very intresting! Please consider submitting them
- qznc (4/8) Aug 28 2015 Added them to Speaker Deck:
- tired_eyes (1/2) Aug 28 2015 Definitely!
- John Colvin (2/17) Aug 20 2015 These are really cool slides. Great work!
- Walter Bright (2/8) Aug 28 2015 I've often thought we need a Roku channel just for D presentations.
- bachmeier (3/12) Aug 28 2015 You and Andrei could offer a MOOC. Martin Odersky had tens of
- David DeWitt (6/19) Aug 28 2015 Thats actually a great idea. Even getting more stuff on Youtube
Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency. I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?
Jun 25 2015
On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency.What specifically do you plan to mention for each?I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?Never done an intro but watched several and have been thinking about doing an intro talk locally myself. One thing I don't often see in intros that I was thinking about adding is who is behind the language? Do a small bio of Walter with his C++ compiler background and Andrei with his modern C++ design background. That will help orient the newbie on where the language comes from.
Jun 25 2015
On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency. I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?If it's a functional programming meetup, show off D's ranges combined with its functional programming style. I think this is what really sets it apart from every other C-based language, if D had pattern matching and destructuring it would probably have the ability to look pretty close to Ocaml.
Jun 25 2015
On 26/06/2015 1:46 p.m., rsw0x wrote:On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:irk be careful when showing off ranges. Get some damn good background of what D is first. It took me well over a year before I started to get into them.Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency. I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?If it's a functional programming meetup, show off D's ranges combined with its functional programming style. I think this is what really sets it apart from every other C-based language, if D had pattern matching and destructuring it would probably have the ability to look pretty close to Ocaml.
Jun 25 2015
On Friday, 26 June 2015 at 04:43:08 UTC, Rikki Cattermole wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August.irk be careful when showing off ranges. Get some damn good background of what D is first. It took me well over a year before I started to get into them.For FP people working with combinators on lazy lists or sequences is a well known thing, so they should easily recognize it. Char.toCode c |> spt |> List.reverse |> List.map toString |> String.join " " (this one is in Elm) And in Haskell it looks similar but usually in backwards order and separated by "." and $. For haskellers, comparing D ranges with "classy prelude" shall be appropriate, I guess. I think one should also talk about how D ranges when passed through several processing steps can keep important information in their types so that xs.retro.take(100).map!f.retro[33] works in O(1). This is what most other languages don't do.
Jun 26 2015
On Friday, 26 June 2015 at 07:00:22 UTC, thedeemon wrote:On Friday, 26 June 2015 at 04:43:08 UTC, Rikki Cattermole wrote:I absolutely _hated_ laziness in Haskell. It made it impossible to reason about the performance of anything. I find it the complete opposite in D because so much happens at compiletime, I've seen ldc and gdc turn rather long range chains into assembly you'd expect from nested for loops.Looks like I will give a talk about D to our local Functional Programming User Group in August.irk be careful when showing off ranges. Get some damn good background of what D is first. It took me well over a year before I started to get into them.For FP people working with combinators on lazy lists or sequences is a well known thing, so they should easily recognize it. Char.toCode c |> spt |> List.reverse |> List.map toString |> String.join " " (this one is in Elm) And in Haskell it looks similar but usually in backwards order and separated by "." and $. For haskellers, comparing D ranges with "classy prelude" shall be appropriate, I guess. I think one should also talk about how D ranges when passed through several processing steps can keep important information in their types so that xs.retro.take(100).map!f.retro[33] works in O(1). This is what most other languages don't do.
Jun 26 2015
On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency. I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?Depends on where the newbies are coming from, C, C++, Java, Python? Would your audience be interested in templates? A big thing in D are structs, they are darn useful. Structs, ranges, templates, component programming and chaining. My only evangelism tip is not to be evangelistic about D. Present it with warts and all.
Jun 26 2015
On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/ As far as I know, pretty much nobody there knows anything about D. So I need to start with some general introduction. My current plan is to basically talk through the dlang.org frontpage. Modern convenience. Modeling power. Native efficiency. I guess others here have done such intros already. What works? What doesn't? What are the usually questions you get from newbies? Any evangelism tips?As these are FP people, I would start by pointing out that D is not a pure functional PL. Then you could explain how its functional aspects benefit from that fact, e.g. - ranges work with mutation => composability _and_ efficient codegen - weak vs strong purity => allows more code to be pure
Jun 26 2015
On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:Looks like I will give a talk about D to our local Functional Programming User Group in August. Feel free to join, if you can be in Karlsruhe, Germany: http://www.meetup.com/de/The-Karlsruhe-Functional-Programmers-Meetup-Group/events/223455553/Presentation done. Only six people in the audience, but they appreciated it. 5/6 already had heard about D. 3/6 had played with it. If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdf I spent some time on D history and philosophy. Mostly frontpage stuff. Then I defined what Functional Programming is imho. Showed D's functional features. Then I also talked about "Design by Introspection" or in my talk "Where typeclasses fail". Finished with D advertisement.
Aug 19 2015
On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote: If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdf I spent some time on D history and philosophy. Mostly frontpage stuff. Then I defined what Functional Programming is imho. Showed D's functional features. Then I also talked about "Design by Introspection" or in my talk "Where typeclasses fail". Finished with D advertisement.i like these slides a lot, has the talk been recorded?
Aug 20 2015
Am 20.08.2015 um 15:06 schrieb yawniek:On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:No. Sorry.On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote: If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdf I spent some time on D history and philosophy. Mostly frontpage stuff. Then I defined what Functional Programming is imho. Showed D's functional features. Then I also talked about "Design by Introspection" or in my talk "Where typeclasses fail". Finished with D advertisement.i like these slides a lot, has the talk been recorded?
Aug 20 2015
On Thursday, 20 August 2015 at 13:42:02 UTC, qznc wrote:Am 20.08.2015 um 15:06 schrieb yawniek:The slides are very intresting! Please consider submitting them to GitHub Speaker Desk (https://speakerdeck.com/), dlang really lacks of presense there (as usual). http://www.slideshare.net/ is also a good target.On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:No. Sorry.On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote: If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdf I spent some time on D history and philosophy. Mostly frontpage stuff. Then I defined what Functional Programming is imho. Showed D's functional features. Then I also talked about "Design by Introspection" or in my talk "Where typeclasses fail". Finished with D advertisement.i like these slides a lot, has the talk been recorded?
Aug 21 2015
On Friday, 21 August 2015 at 09:17:57 UTC, tired_eyes wrote:The slides are very intresting! Please consider submitting them to GitHub Speaker Desk (https://speakerdeck.com/), dlang really lacks of presense there (as usual). http://www.slideshare.net/ is also a good target.Added them to Speaker Deck: https://speakerdeck.com/qznc/functional-programming-with-d Is it really worth it to just publish there?
Aug 28 2015
Is it really worth it to just publish there?Definitely!
Aug 28 2015
On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:On Thursday, 25 June 2015 at 12:39:11 UTC, qznc wrote:These are really cool slides. Great work![...]Presentation done. Only six people in the audience, but they appreciated it. 5/6 already had heard about D. 3/6 had played with it. If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdf I spent some time on D history and philosophy. Mostly frontpage stuff. Then I defined what Functional Programming is imho. Showed D's functional features. Then I also talked about "Design by Introspection" or in my talk "Where typeclasses fail". Finished with D advertisement.
Aug 20 2015
On 8/20/2015 6:27 AM, John Colvin wrote:On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:I've often thought we need a Roku channel just for D presentations.If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdfThese are really cool slides. Great work!
Aug 28 2015
On Friday, 28 August 2015 at 19:49:36 UTC, Walter Bright wrote:On 8/20/2015 6:27 AM, John Colvin wrote:You and Andrei could offer a MOOC. Martin Odersky had tens of thousands in his Scala class.On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:I've often thought we need a Roku channel just for D presentations.If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdfThese are really cool slides. Great work!
Aug 28 2015
On Saturday, 29 August 2015 at 01:48:23 UTC, bachmeier wrote:On Friday, 28 August 2015 at 19:49:36 UTC, Walter Bright wrote:Thats actually a great idea. Even getting more stuff on Youtube would be a good start. A Vibe series would be great to have on Youtube. Lots of good quick stuff on Flask like Miguel Grinberg would be a great start but yea MOOC would be awesome not only for learning but for advertising.On 8/20/2015 6:27 AM, John Colvin wrote:You and Andrei could offer a MOOC. Martin Odersky had tens of thousands in his Scala class.On Wednesday, 19 August 2015 at 20:15:48 UTC, qznc wrote:I've often thought we need a Roku channel just for D presentations.If you are interested in my slides: http://beza1e1.tuxen.de/stuff/FunctionalD.odp http://beza1e1.tuxen.de/stuff/FunctionalD.pdfThese are really cool slides. Great work!
Aug 28 2015