YTread Logo
YTread Logo

Scott Wlaschin F# journey

May 12, 2024
The conclusion of this stage of my life is that it is very important to expose yourself to many different languages. I think unfortunately a lot of people know Java. They know JavaScript, they know C, whatever, learn as many languages ​​as you can, it's very good for you to expose yourself and I have a whole talk in four languages. and it's been 40 years, which is about this and these are languages, these are languages ​​made in the '70s and '80s, so there's no excuse. It's not that you need modern technology. All these cool things were done, you know, before the Internet and the other thing.
scott wlaschin f journey
I learned when I was learning all these different languages, you don't fight the language, like if you're a Java or object-oriented expert, don't try to fit an object-oriented program into your you know functional programming or logic program or vice versa, you know. apt use find out what the language is like to be the essence of the language as you know it and follow that essence uh, don't fight it because it's very frustrating. I see people get really frustrated when they learn fish or something and they're trying to do things and they're trying to do or they're coming from Python and they're not used to dynamic typing and it's like why do I have to put types on all this stuff? ?
scott wlaschin f journey

More Interesting Facts About,

scott wlaschin f journey...

They get frustrated because they're imposing their existing way of thinking on a new paradigm and it's like you can't learn that way, you have to forget everything you know and I and that's one of the things I learned, so when I got to F deliberately said that I need to forget everything I know about o and small talk and you know all these things and and come to their own terms and that was good. I think that helped me learn F better, although it was still very difficult and I also learned a little bit about everything I learned about databases.
scott wlaschin f journey
I learned that I was reading all these books and again without the Internet. I mean, one of the problems with the Internet is that you spend all day on social media and I'm scrolling through Twitter or Instagram or whatever. I didn't have that, so if I wanted to entertain myself I would read a book, so I had these big heavy programming books and I would read a whole book on databases or a whole book on you know, user interface design or something like that and You know, that's how I learn things, but there's nothing to distract you, so in a way I was pretty good that way right now, the boring thing is that for a long time life was pretty boring and, um, the reason was I think, the Internet.
scott wlaschin f journey
In fact, it made things boring. You know, we started having dancing monkeys and a lot of money started coming into programming and it was all about startups and Dooms and how we can make money as quickly as possible and it stopped being that. You know, I love software design. and I love to be thinking and you know, thinking about things and no, there was no room for that, you had to get things out the door as fast as you could and it didn't matter if it was good or not, you just got it done. You walked out the door and you know it's still going on, unfortunately a lot of things are still happening so I was part of the first dogun bubble where it was all companies that were worth millions of dollars and then they came to nothing so that was you.
I know it was expected, I actually expected it to happen because if you know the history of technology, a bubble always appears, so JavaScript took over, Java took over, it was really boring, we had this kind of monoculture where that It's the only thing people knew, all this programming. the books on design stopped immediately, in my opinion nothing interesting happened anyway, there's not a lot going on, um and you know, if you read if you read Dillbert in the past, the number one comic strip was Dilbert and it was it was about you know, enterprise programmers and that was very precise, it was like that, very boring and I was doing a lot of contracting with Python Visual Basic and then I started getting net and I was a database administrator for a while, so I learned a lot of things, so um.
In fact, I learned that programming is more than technical. I learned some things. I learned that it's not just about technology and programming, it's about listening to people and I got into domain design and you know, in a recruiting world, it's all about that. about what you can offer someone, it's about adding value, right, it's not about the best technology and sometimes the best you know, the technically best technology is not what people want, so I had to get rid of my ego and instead of saying good my way. it's the best way, you know, you learn to adapt your style to this and I actually have a whole tweet about this on I'm doing Python.
I made a contract with Python recently. I'm happy to do any job that pays me, so I did it. a Python contract and I have a whole tweet about why it's like being a good session musician so if you're a session musician and you work in a music studio or something you come to you know in the west a song or a heavy metal song or a pop song, you know, or a rap song, whatever, if you're a good musician you adapt your style to the song you're playing, if you don't play you know some kind of shredding metal. it smells when you play country music and vice versa you don't play steel guitar you know in a rap song maybe you do but you know your IDE you deliberately suppress your ego you try what's best for the situation and that's something I learned doing my Hiring and I recommend that you turn off your ego and adapt your style and finally I answered F by the way, any questions if I'm happy to stop.
Now, if just before we get into question F, there is a question about the principle, yes, yes, I have one, which is what I imagine, but in your experience, as it was in those years, you have one more shelf of books. meaningful where you can In fact, you buy books, read them and tell them as if you read them today. I have between 10 and 15 books and I don't think I have them. I may have finished two of them well and you know, I think that's a really amazing observation. Social media really distracted us a little from the real goal of reading books.
Yes me too. I mean, I used to read books. I don't read books anymore because you know I have social media. I mean, I spend a lot. of time reading on the Internet I read blogs and I read newspapers and I read you know Twitter and stuff, but in terms of sitting down with a book and reading it cover to cover, yeah, I stopped doing that which is bad, I mean. I'd really like to do that because I think there's something, it's a different kind of knowledge when you're skimming and picking here and choosing, you get superficial knowledge, like for example if you spend all your time reading stack Overflow, I mean, stack Overflow is there too. kind of dead now, but in the past you know people read stack overflow and you spent all day, but it's still not the same as reading a book that is specifically designed to teach you something about a particular topic, yeah, and the Second question I had is like, you know, when you say you order books and you know when they're delivered and all that, I guess that's when you have to do it. spend to learn something was more, you know it was a longer time, longer wait time, you know you get the book, you read the book, you can apply what you and they apply for jobs and all that, so I guess you know that information wasn't as available as it is now, so how do you think that will help you absorb the knowledge and get more of what you were trying to learn?
Yeah, I mean, it's different, it's harder, definitely, things were slower, I mean everything classic. I mean, here's a good example that the whole agile movement was also taking off in the 90s and before, when working on a project, it wouldn't be unusual to have six months between deliveries of a piece of software if you're really fast, maybe every month maybe every two every two weeks if you're really really really fast and then you know with the internet you could start to know the whole thing about having AG XP you know you could have delivery once a week and then you had continuous delivery like your delivery, you know you put something in and then you had source control, yeah, in the past, I wasn't using source control either, so you know everything would live in folders on your drive and the whole thing about using source control and then GitHub came along um and uh knowing that distributed source controls were yeah, I mean, I think when I said this was a boring period of time, it was boring in terms of uh programming languages ​​were boring. but in the programming processes, there were a lot of things happening, like the rise of agile, the rise of source control, you know, and all that kind of stuff, there were a lot of things happening that way, absolutely, but in terms of be, you see.
I'm not that interested in the process of professionalization, I'm more interested in the ideas, so those things didn't interest me much and the whole Internet, you know, does things like the JavaScript client server which never interested me either. So, um, but I mean, for other people it's a very, I mean, for other people, it's a very exciting time. The Internet was an exciting time for many people. For me, it was all about Java and JavaScript. It was really boring, so thanks. Jack has a question, yeah, and maybe you'll get to this here in a second, um, but what was it like while you're going through this?
Because I guess I'm actually watching Halt and Catch Fire right now, if anyone has. I haven't seen that show, it's so funny that you're talking about this and I'm going to say I was literally watching it yesterday and I think this is crazy, this is exactly what happens if you haven't seen that show, but my question I just want say it's on my CH list. I hear a lot of things and it sounds like it was there at the time, it sounded like when I was programming then, so yes, absolutely, so I keep asking you, you have to watch it SC, you would love it, but my question was because all these programming languages are being developed and all that, I guess object-oriented programming is something that is coming.
Was there any mention between before 2008? from Functional Pro, that was because I mean, I feel like functional programming has recently come on the scene pretty strongly, yeah and uh, and I'm pretty young, so I just started programming like five, six years ago, so I'm curious about know if functional programming was emerging. Were you aware of it even until 2008? Well, I was aware of it because I knew the kind of slightly academic side of things like Miranda and Haskell, but not everyone was talking now, which is interesting. It's just that I was there before object-oriented because I was having a little chat before object-oriented programs were cool, so when Java came out and there was an O, things were considered very strange, as was the function now or it was really weird, um and all the traditional programmers hated it, uh, they said this is new, these new modern things are terrible, um, but you know somehow it took off, there was Objective C and then there was C++ and then small talk really took off for a while and then jav. and then came Java and Java had a massive marketing campaign that they were giving away remember how they said compilers were expensive, it cost $500 to buy a compiler.
Sun was giving these away, they were giving away Java compilers, they were giving away the books. they were giving away thousands, hundreds of thousands of things that instantly it was actually the Java marketing campaign that really made it take off uh and that became Java was quote unquote object oriented now like a small talker I hated it, I wasn't object-oriented was a mix, it wasn't really object-oriented from my point of view, it was fake oo uh, but that's what it became and at that time it became very fashionable and all the people like how we do it and then already you know, there was O, everything was O, they started having object-oriented Cobalt, right, object-oriented Fortran object, everything was like or was what was trendy, so, um and that, it wasn't until the mid-90s that the Orient thing really took off, but yeah. functional programmers nowhere and quite fun Small Talk was more functional programming than Java because I learned a lot of things from when I started in fop, things like maps or how to manage collections with maps and filters and all that stuff, uh, that was in some You already had that you passed, you didn't call it Lambda but you passed a piece of code against the collection because it was encapsulated, you can't, you weren't allowed to loop through a collection, you had to pass me a self. a function or a Lambda or a small talk called them blocks, but it was the same thing that you passed something to execute on each element of the collection, so I already knew those things since I was little, so when I got there, I thought they were cool, uh and Same thing when the link came out in C, it's like I already understood exactly how the link works because it was kind of a copy of the little thing that Toop made it, so, um, but yeah, it was unusual in that way, amazing, yeah, I think it was unusual that way.
I think most people had no idea and weren't curious, that's what all the people curious about learning 20 different languages ​​went out the window, that's what made me sad is that people stopped being curious about it. anyway. That's true, yeah, that was, that was amazing, yeah, no, it's just because I always think that, so I guess it was imperative before that,bugs, so some people got really mad at me and said you were depriving people of knowledge by not telling them about monads and I told them: if you want a Mona tutorial, there are thousands of monad tutorials available.
I'm not depriving anyone, I'm just not talking about it, people really, really, some people really got really. In fact, someone started arguing with me on Twitter and calling me a terrible person, um, so you know, there you go, um and then The next one I did was the talk called functional design patterns and, again, functional program is Very academic and the whole design thing. In terms of architecture and design, that wasn't really a thing in the functional, they focused a lot on the mathematical side of things and I come from a design background. I come from the small talk side, now what's interesting. by the way, they're all famous people, agile, Kent Beck Martin Fowler, Robert Martin, and several other people, they were all small talkers, they all came from the small talk wolves, so that world was very influential in the whole design and into the whole agile thing, so I also came from that world and was trying to apply that stuff to functional programming and no one was talking about it, so I thought, where's the gang of four book?
Do you know where the working version of the gang is? Where is all this other stuff? so let me do it, no one is doing it, so I thought, well, I'll try to put all the functional patterns that I know into one talk and that talk was very long, but what came out of this talk was this slide that covered so much. I hate, uh, and it was if you haven't seen the talk again. I'll send you the link below, but it's on YouTube. I put this slide here and people hated this slide. I thought it was funny because I was actually making fun of functional programmers which people didn't realize in this talk.
I was making fun of functional programmers who said everything is a function. I thought everything is fun, you don't need a pattern because everything is a function, so I was making fun of them, but the O people were so mad at me. This guy said it's an open and shut case of FP intolerance and someone says you saw a holy war where there is none and then Robert C. Martin. Uncle Bob. That annoying Uncle Bob of his. a whole post about how this is a terrible slide, terrible anyway, it was funny, it was very funny, um, that's why you see, he's accusing me of being an Ivory Tower, literally, people have no sense of humor, they're very bad at understanding jokes, that's one.
Things about some programmers are just useless, so here's the bottom line: Yeah, the bottom line is that people don't have a sense of humor and sometimes people take things that you do and use them against you and it's like If you don't let that stop. You're fine, there's nothing you can do about it. I actually have very thin skin. I hate when people say something bad about me. It's like, "Oh my God, they hate me. You know, you can read a hundred comments." and a negative comment and I take the negative comment very seriously, but I've gotten a little thicker and it's like there's a lot of people out there, there's nothing you can do that will make them happy, just you know, ignore them, try . and try to make them try to be funny but be nice, but you know, don't let that get to you now, the thing is I really did.
I didn't realize at the time that I was actually creating this monster because now there is a good program for Java and Sear and Python Ruby and go and typescript and cobal I didn't find I'm looking for cobal anyway it's crazy right, they're all these things and a lot of these things, I don't even think I need these These are dynamic languages, well, they don't go, but they just don't fit. This is the kind of thing I talk about. If I were writing Python, I wouldn't use monads. It's not appropriate if I'm writing Ruby. or wow, it's like Lang, the language is not designed for these things, don't do this, so I'm actually against them using functional functions using these techniques.
I think it's a very bad idea, so it's not, it's not like Python has its own. Natural style and functional program are not part of this, so I made my book, so I was contacted by pragmatic programmers and, they were very good, if you ever want to publish a book, I highly recommend that they are very good. to work, they have a good offer for authors, they give you like 50% of the money, which is good and they were unexpectedly successful people. Actually, you know, it gets very good ratings on Amazon and I was actually very surprised.
I thought I was doing it again to put it all in writing and also, you know, people think you know what you're talking about, if you write a book you must be, so I was doing it for myself as a promotion for my career really. I didn't think it would really sell, I just you know, they didn't think it was going to sell either because it's functional programming, the pragmatic press, uh, they had a lot of Ruby books and they have a pragmatic program and stuff, they're not functional people at all. In fact, this is something that has been phased in recently, but it still turned out to be a great success.
I was actually surprised, I mean, this is what I expected in sales. To do, I thought you knew there would be a peak and then it would go down and stuff, but it's actually been selling at a very steady pace, it's like today's sales are still going on, so you know it's not. enough to get rich I'm not going to get rich from this book um but it's good pocket money um so uh uh yeah that's good so and so the advice if you ever write a book I have some tips for writing a book , not the most that's relevant people, but I deliberately didn't write anything that was specific even for F actually, but they were general principles and these principles are still valid in 10 years in 20 years, so the example from the book of the gang of four was published in 1996 right, I think, and you know, the domain design was published in 2001 or something like that.
These books are 20-30 years old and still relevant, so that's what I want to do. I try to keep my stuff relevant, you know, it's not Visual Basic 5.0. second edition, you know which one will be deprecated when the third edition comes out or the latest Java JavaScript framework, which will be deprecated in six months, so I kept it short, I kept it focused, uh, and I think that really helped, it's not one of These huge long books, you know, they're short, so it was okay, so just to finish, then about the future or more questions about it before we finish.
We have one that is relevant to Dain's div layout question. Robert says that he. has learned about domain design through your books and videos. He asks you if you think he's missing out on some of the conventions if he's not reading the trailers or the books about trains. No, I don't actually think so because I think it's pretty funny that the whole concept of the design domain was to move away from programming first. It's about thinking about the design, thinking about the people, the language and you know, making the language easy to understand. That was the whole concept and yet the design domain and community. he has created all this complicated language that no one understands and unfortunately the books are full of jargon, there are a lot of words if you look at the Blue Book and you also look at the version book and stuff, there are many, there are hundreds of words.
You're supposed to know if you're going to do it if you're doing it and if you don't use these words you're not doing domain design. I think that's really bad, so I'm using the words from my book but I'll deliberate. try not to use them too much, you know, I try to talk about the concepts, like listening to people using the same words, everyone uses the same vocabulary, everyone uses the same concepts. That's the kind of thing I talk about, so I think if you take that seriously, then you can do mastery and design. I don't think you need, uh, all that other jargon, people tend to like to formalize things and it's like you have to be rigid, things become rigid and you have to like doing this.
This way, otherwise, you're not doing it right. I hate that kind of control, so I think if you understand the concept of listening to people and using the same language and the same concepts, that's all you need to know. The paragraph would explain it, but the other books are still worth reading. I think to get other people's opinions on things, so don't do it. I mean, it's probably good to not just take my opinion, it's probably good to hear other people's opinions too. so having said that, but I don't think it's not, I don't think it's that important, I think my attitude is always to not use jargon and that's why I think people like my talks and my books and stuff like that. , because I try to avoid doing that, you know, yeah, we have another general question B that we'll save for last, okay, I have a question about your own book, did you have the whole story from the beginning or did you?
Well, I go from chapter to chapter and naturally I think about Well, that's the next logical step that would happen in real world modeling. Okay, so when I made the proposal for the book, I actually made an outline. I want you to do a summary of the book and I wanted to do a summary so I like the first thing you need to know about how to talk to people so the first chapter was going to be about listening to people and then the second chapter was about how to convert that language into types and then the third one and then it was going to be how to program with it, how to actually make an implementation based on those types, so that it would follow naturally, so the outline when you write the book, things don't change anything you know, as soon as you like programming you have your design and things change when you start implementing it, but I think it's like software, you know you start with the kind of big picture. design and then when you try it, then you know, that's the design part and then you have the implementation part, so it's always good to think about the big picture, I think for an academic, for a technical book, for no, for a novel, perhaps. no, but for a technical book, I think it's good to have an outline and then when I implement the chapters by writing them, yes, things change and I have to go through the outline and modify things a little bit, but I think it pretty much followed the outline because I wanted all of this from you guys to know, to start talking to people and then design and then implement and then the last part was about how to evolve a design and then how to talk to databases and all this stuff, so I didn't do it. , I don't think I changed it much overall when I was between my original outline and you know, but I think it's good, again, it forces you to think, uh, when you're when you're doing a summary, yeah, it helped me that I talked a lot about it, you know, so if I tried to write this book from the beginning, I don't think I would have done a good job because I didn't.
I really understand, you know a lot of things, but after you've done it for five years, then it's like, I think I know what the important things are to say and how to explain them to people, that helps, yeah. thank you yeah okay okay so yeah just to wrap up and then the future that's where I'm at right now so I'm C for um uh semi-retired if you noticed I haven't updated my blog in a while and I'm just me. lazy actually it's not, you know, I want, I want to update it. I've just been lazy, so I have a couple more books in the works again.
I'm being lazy and I need to work on them and I'm just you know I should, but one is going to be in functional programming, basically, all the other stuff besides the main ones, all the stuff with world programming and all the functional design patterns and those things. I want to put that in a book, um, so that's something I want to do um and I also want to do a book about software design and stuff, so we'll see, we'll see how that goes now in terms of my personal life. What I did was move. I used to have a very stressful job and I just moved somewhere quiet and I really wanted to get a lot of stress off my chest, you know, and I don't know if it applies to some of you, but I was actually getting really exhausted with both of them.
Jobs I had and a lot of it had to do with working long hours and being stressed all the time, so I deliberately tried to de-stress my life and took a pay cut to get a lot less money if I were living in San Francisco, you know, Working for a big company I could probably make a lot more money but I don't want to do that, it's not about the money it's about having less stress in my life so I moved to a quiet place and luckily now I can work and train remotely thanks to co.
Before, people didn't want you to do anything remotely. You had to go. You know, before I had to travel somewhere to do training, but now. everything is remote so that's good because Co has really helped me personally in terms of opening up to people allowing me to work remotely it's fantastic so yeah basically if you find out you're really stressed and you have a job very stressful,consider taking a In a less stressful job it might be that the job makes you unhappy so it's not just about the money so it depends if you're young you can probably accept it but when you get a little older it's not worth it so sometimes having it is worth a boring type of job that is less stressful, like a 9 to 5 job, that you can leave behind, so Ian, I remember someone saying that working in a large corporate company can actually be more fun than working with a lot of energy. start just because you know things are more relaxed things are not in such a hurry managers tend to be better you know they actually tend to be more mature and you tend to have more advantages you have better um you know better advantages and stuff healthcare and all of that, anyway, that's something that I can highly recommend and I'm definitely a lot less stressed now. so that's really good um and then in terms of fshp um yeah, there's a lot of things that I think F I think f is fantastic and it's a real shame it hasn't really taken off there's a great post by eric sunk i think saying that one of the problem with f is that c is too good, you know, and that c, if you're a c programmer, you don't , you're not desperate for something like f, right, because c is already pretty good, so I'd like to see F actually. focus on the Python people because they already have their indentation already there, you know, the very similar philosophy of how to keep things simple, keep things, uh, you know, there's not a lot of extra nonsense, you know, no, Python never had really the object. oriented baggage that C has.
I used Python when it was version 1.4 or something, so it didn't even have classes, so it didn't have any objects of its own, it was just a very simple, very nice language, so yeah, I think I'm going to f like a scripting language like Python or JavaScript um, I think it could be more successful than going after C and you know, if there were even things like having libraries that were literally the Python libraries available like C in F, you know, if I'm a Python person, I can literally get to F and I can use liar strings.
I already know how to use collection classes. I already know all those things. I don't know, it's just an idea. And the same with JavaScript, I mean. I think f is better than typescript, um, over and over again, if possible, if the tools are there to make it really easy to use. I mean, Fable is fantastic and again, I don't really know, it's just that you know it's kind of hard. but part of it for this to work I think we need to get rid of you get and replace it with a source code library so a long time ago I was using Pearl and Pearl has something called cpan and it's a source code library and um it's really nice, it was one of the great things about Pearl that it had this fantastic library and I don't like it.
I'm actually very against these distributed libraries where you register as npm, terrible, terrible way to do it. uh source libraries, so my philosophy would be to have everything in one place where I could get the repository, so I actually thought I designed it in my head and if anyone wants to implement it for me, I'd be happy to tell them. you're my design but basically you put everything in a GitHub repository and people just push it and then when you download it everything is offline and you don't have to worry about authentication and all this stuff that you have with mpm all stuff from the left pad which couldn't happen anyway.
I have a whole thing about that, but definitely switching to a more source language style, uh, because that, compared to Python F, is fantastic, all the things that Python solves, all the problems with Python F. so that's it. what I would focus on if I was in charge of f so anyway that's my that's the question yeah uh yeah hi uh so you um I also thought about these things so from my point of view it would be uh if we have something like f but more focused on a uh on structural types and not on nominal types, which would probably be closer to the ideas of uh um to a dynamic but still statically typed language, so I've already implemented a small uh language without paa, but just the EST and the solver which basically looks like f Shar or is something like f Shar a little bit scaled down, but it focuses on a structural type, so it's what you think, well, I mean. there are two, there are two ways, one is to make F focus on Python just because you know that making life easier has a migration path for Python people, which doesn't exist, it's not very obvious right now how to do it , but yes, have another one.
A language that compiles to F and that uses the F Optimizer uh and the F that you know behind the scenes but has a different syntax on the front end would be very interesting and could use the keyword that you know as Python and could be seen. like python, like typescript, like you know, languages ​​look like something, I don't know, it would be interesting to try, I mean, re and ml tried that with JavaScript, you know where they take the camel and they had some kind of JavaScript Syntax in front of O camel, yeah, it didn't work very well, but um, I mean, I think Python is ready for something like that, yeah, and if you have the same C, I mean, yeah, the thing about Python is that there are a lot of cool stuff that Python likes to pass, you know, like keyword dictionary parameters, you know the double style parameter, all those things that are obviously hard to do with a statically typed language, but I think you could do it Yeah, doing um kind of anonymous check-ins and stuff and you know, I think there are things you could do, that would be great.
I would definitely support something like that, isn't it nice, yeah, sometimes when I do it I type a lot of text on my uh. daily pay uh job let me say and it really feels cool when you say okay, I mean, the type names are actually like annotations, but under the hood, uh, if the structure matches, it's very cool, I mean, yeah , yeah, that's basically it, I think. You would have to use You would have to use structural types if you really wanted to be compatible with Python, yes, absolutely, so, yes, it's very interesting, I mean, yes, I think if I don't know, it's that I think they are similar types. has tried to literally become compatible with JavaScript again.
It would be interesting to have it. I think that's what goes with the flow. I mean, the problem is that at some point you have to change your way of thinking if you're a Python programmer and all you want is static typing, that's something, but if you really want to get the benefit of discriminated joins and you know the application partial and other things that you would have to do at some point, you have to get out of your comfort zone and learn, learn a new way of thinking about programming, so it may not work, so ml may not really appeal to JavaScript programs because it's just that they really have to think in a different way, so it may not work. but it could be that you could probably get a B.
You know a certain group of Python people if you made it easier. There aren't many, for example there isn't a blog post on how to convert Python to F. I know there are a lot of C to F blogs, but you don't know that kind of stuff and I wanted to say I was going to write something like that. I still could do it, but you know, I think it would be interesting to see how. that works, yeah, like you mentioned, I think at the beginning of your um um yeah, your story is like uh, the marketing, the marketing campaign would do something really, really, you know, uh, go to the masses, which is yeah you don't have if you do a Java marketing campaign like uh uh, then yeah, you know you're going to reach that market, if not, you know it's going to come down to, you know, curious people, that's true, they just want to try something different, it's difficult, I mean, if you think about The big C Java languages ​​go and rust, I would say, and and they all have big companies now, I mean, Rust has Firefox behind it, so it's not exactly the same, but they definitely have a lot of support, You know, they are very few, I mean.
Python was a one-person thing and Ruby was a one-person thing, um and actually Python, you know, is still very strong, um, but yeah, it's very difficult to introduce a new programming language that gets a lot of attention. , Yeah. Okay, it's difficult, but I think Jack has a question, yes, he had a question: are there any interesting new technologies or techniques? Because I'm sure when you discover functional programming, wow, this is awesome, is there anything recently that you discovered or subdomains within functional programming that you guys highlight, you're like Hey guys, this is really cool, this is something newer. um no, I think well, I think I'm interested in the whole effects systems thing, I mean, I like most people.
Monads are really annoying and it's interesting to see that people are getting sick of them and trying other things like Scola 3 just has this thing called direct effects and OK camel has something similar and I wouldn't be surprised if Don could come up with something similar , so it would be interesting to definitely move away from the whole monad. It's again, I think it's a dead end, but you know, that's what's hot right now. but that could be that in 10 years it will be that monad, monads per say, but um, yeah, to be honest, I don't think there are many programming languages.
I'm trying to think of something interesting, you know, I mean the whole rust thing, maybe that's it. a good problem, maybe it's a good problem that we can't think of anything because I think it's stabilized in terms of there are a couple of things that rust with memory. I think the rust has done very well with the memory. management you know and um with the Checker loan linear things like linear types and some of these things will become more popular. I tried playing Idris with the dependent types. I don't see that really taking off because you're basically programming in the type system and if you're going to program in the type system you can just program in the language, so I'm not sure you know that.
I think the programming language has really stagnated, but I think there's room for there's room for tools and there's room for libraries and there's room for other things and just design, I mean, and I mean, one of the things that should be My conclusion is that programming languages ​​are not what makes success successful. programs like if you look at Facebook, it's written in PHP, you know Amazon was written in Pearl, you know there's no famous, there's no billion dollar companies using hasal and if you know the programming language itself is irrelevant for success. of the business and what you know that makes a business successful is if you listen to customers and if you implement it, you know the things you want to do now.
I mean, it's good as a program, it's good to use a nice language, but in terms of um, you know a language that solves problems, you know languages ​​are good enough now to do almost anything and we'll see if the whole AI can help with that, I'm not convinced AI because I think it's just different, like I say, I think the fundamental problem is not writing code, the fundamental problem is understanding what you're supposed to write, what you need to do and , therefore, write the specification now. AI can't write the specs, AI can implement the specs you write, but figuring out what the right look is, that's what programming is in my book, it's not the technical trash talking stuff, it's like understanding what which is the problem and what is the best way to solve the problem and as far as I know AI can help you write code faster, that might well be true but they are not going to replace the thinking that I don't do.
I don't think it's good, yeah, it's like when people get terrified. I have a very similar opinion. A quick question is what is your Twitter account? The photo is that the Santa Claus from Miracle on 34th Street, yeah, okay, he was going. Crazy because I watched too many old movies because my mom told me to, but I saw that and thought who I recognized that guy from somewhere. The reason is because someone I once was showed up somewhere with a really big beard and someone said you look like Santa and that's okay so I'm going to make my Santa profile picture, that's hilarious, that was very, that's everything anyway, I just want to say that's it, but um, yeah, we're I'm happy to stop there, but if you, I'll be happy to be here for more questions.
If I don't know how long you want to continue, but I'll be happy to stay here and answer any questions you want, yeah, so, um. uh wrap up the session and then we can stay on the zoom call for a moment and answer the question so anyway, thank you so much everyone, thank you for listening to me ramble on about all this stuff and it was awesome yeah, thank you so much. for this was really enlightening so let me get the screen back for a second and then I can end the session so it should be this so yeah thank you all for tuning into this for our 15 H 50th anniversary of the session it's been a trip and you know, thanks also to Scot for being with us today, so just to remind a little bit who is amplifying F, so amplifying f is an initiative to encourageopen source collaboration and try to make a difference in the F ecosystem.
If you are in the F ecosystem or want to learn more about FSH you can go to our website amplifying f. and here you have initiatives like Essentials um and uh, as you can see here, we have a full course uh aimed at anyone who has any programming knowledge that can learn how to do it, how to do it, uh. F what are the tools that you need and you know the types of code functional programming Concept in general pattern matching and all this so yeah, watch this and we have all the videos attached to the session and this also you know it was uh ronal uh it was also part of this who on The Zo call so thank you Ronald and Ian Russell were part of this too so yeah we just finished this this Wednesday so this is all over now and if you want to see more of the sessions We had more than the rest of the 50 sessions so you can go to our T sessions and you will see here many sessions we had on different R topics such as fixing bugs, fixing some problems in the build and working on tools to build in Visual Studio in ionide.
You know, we knew a lot of content. which you can check if you want, you know how to contribute to an open source library and all of that will let you know what your starting point is so you can finish your contribution, so yeah, look at this and the last one. is we all understand that being open source maintenance is hard, sometimes you know you're just going to quit and move on and uh we don't want to, we also want to be here for you just to help you find. your project, you know a new destination, a new place, so you just don't have an open source library, so if you have any problem with open source and want to know, how can we help you? to do this to verify our initiative, contact us, you can see here our handlers and yes, and the last thing, what is also important is that we created this year an open collective initiative in which we want to try to get some funding and it really marks the difference, like you know, pay our subscriptions to zo uh, maybe create um, create more initiatives like fenals, like maybe have travel expenses to cover some travel expenses to talk, you know, maybe in the US . or in Norway or you know any In another country that wants us and also to, maybe, get some merchandising.
We have a different goal, different TS here, so check out our website and you can see exactly what we could do if we had more funds. So yeah, thanks to our current sponsors. We don't, we are very grateful for this, not even you knew, I expected so much, so much, so much support, so yes, thank you very much and, with this, I'm going to say goodbye, thank you for joining us and I. I hope to see you in the next session

If you have any copyright issue, please Contact