Podcasts about tdd test driven development

  • 25PODCASTS
  • 31EPISODES
  • 43mAVG DURATION
  • 1MONTHLY NEW EPISODE
  • Mar 24, 2025LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about tdd test driven development

Latest podcast episodes about tdd test driven development

The Mob Mentality Show
Garrick West on 'Building' Great Developers with XP & Agile plus the Best Debugging

The Mob Mentality Show

Play Episode Listen Later Mar 24, 2025 48:03


.NET in pillole
266 - Test Driven Development, investimento o costo?

.NET in pillole

Play Episode Listen Later Nov 11, 2024 11:56


Concludiamo il percorso nel modo dei test parlando di TDD (Test Driven Development), una pratica dell'Extreme Programming che si basa sullo scrivere prima i test e poi il codice.https://martinfowler.com/bliki/TestDrivenDevelopment.htmlhttps://learn.microsoft.com/en-us/visualstudio/test/quick-start-test-driven-development-with-test-explorer?view=vs-2022https://en.wikipedia.org/wiki/Test-driven_developmentLibro Unit testing - https://amzn.to/4hztiBL#tdd #unittesting #dotnet

Semaphore Uncut
Technical Tips - Handling Flaky Tests in LLM-powered Applications

Semaphore Uncut

Play Episode Listen Later Apr 23, 2024 11:44


We are continuing our series of episodes - Technical Tips - to give you bite-sized advice on the best practices of software engineering so your coding life is easier and more efficient. Today, we'll learn how to apply TDD (Test-Driven Development) to Large Language Models (LLMs) powered applications. Tommy, our technical writer, will be guiding us through today's topic. Listen to the full episode or read the transcript on the Semaphore blog.Like this episode? Be sure to leave a ⭐️⭐️⭐️⭐️⭐️ review on the podcast player of your choice and share it with your friends.

Test & Code - Python Testing & Development

TDD (Test Driven Development) started from Test First Programming, and has been around at least since the 90's. However, software tools and available CI systems have changed quite a bit since then. Maybe it's time to re-examine the assumptions, practices, processes, and principles of TDD.  At least in the context of my software engineering career, modifications to TDD, at least the version of TDD as it's frequently taught, have been necessary. This is the start of a series focused on examining TDD and related lightweight practices and processes.Links from the show:From XPTest FirstUnit TestsAcceptance TestsTest-Driven Development (wikipedia)

testing software context programming python tdd tdd test driven development brian okken
Latent Space: The AI Engineer Podcast — CodeGen, Agents, Computer Vision, Data Science, AI UX and all things Software 3.0
Debugging the Internet with AI agents – with Itamar Friedman of Codium AI and AutoGPT

Latent Space: The AI Engineer Podcast — CodeGen, Agents, Computer Vision, Data Science, AI UX and all things Software 3.0

Play Episode Listen Later May 25, 2023 62:36


We are hosting the AI World's Fair in San Francisco on June 8th! You can RSVP here. Come meet fellow builders, see amazing AI tech showcases at different booths around the venue, all mixed with elements of traditional fairs: live music, drinks, games, and food! We are also at Amplitude's AI x Product Hackathon and are hosting our first joint Latent Space + Practical AI Podcast Listener Meetup next month!We are honored by the rave reviews for our last episode with MosaicML! They are also welcome on Apple Podcasts and Twitter/HN/LinkedIn/Mastodon etc!We recently spent a wonderful week with Itamar Friedman, visiting all the way from Tel Aviv in Israel: * We first recorded a podcast (releasing with this newsletter) covering Codium AI, the hot new VSCode/Jetbrains IDE extension focused on test generation for Python and JS/TS, with plans for a Code Integrity Agent. * Then we attended Agent Weekend, where the founders of multiple AI/agent projects got together with a presentation from Toran Bruce Richards on Auto-GPT's roadmap and then from Itamar on Codium's roadmap* Then some of us stayed to take part in the NextGen Hackathon and won first place with the new AI Maintainer project.So… that makes it really hard to recap everything for you. But we'll try!Podcast: Codium: Code Integrity with Zero BugsWhen it launched in 2021, there was a lot of skepticism around Github Copilot. Fast forward to 2023, and 40% of all code is checked in unmodified from Copilot. Codium burst on the scene this year, emerging from stealth with an $11m seed, their own foundation model (TestGPT-1) and a vision to revolutionize coding by 2025.You might have heard of "DRY” programming (Don't Repeat Yourself), which aims to replace repetition with abstraction. Itamar came on the pod to discuss their “extreme DRY” vision: if you already spent time writing a spec, why repeat yourself by writing the code for it? If the spec is thorough enough, automated agents could write the whole thing for you.Live Demo Video SectionThis is referenced in the podcast about 6 minutes in.Timestamps, show notes, and transcript are below the fold. We would really appreciate if you shared our pod with friends on Twitter, LinkedIn, Mastodon, Bluesky, or your social media poison of choice!Auto-GPT: A Roadmap To The Future of WorkMaking his first public appearance, Toran (perhaps better known as @SigGravitas on GitHub) presented at Agents Weekend:Lightly edited notes for those who want a summary of the talk:* What is AutoGPT?AutoGPT is an Al agent that utilizes a Large Language Model to drive its actions and decisions. It can be best described as a user sitting at a computer, planning and interacting with the system based on its goals. Unlike traditional LLM applications, AutoGPT does not require repeated prompting by a human. Instead, it generates its own 'thoughts', criticizes its own strategy and decides what next actions to take.* AutoGPT was released on GitHub in March 2023, and went viral on April 1 with a video showing automatic code generation. 2 months later it has 132k+ stars, is the 29th highest ranked open-source project of all-time, a thriving community of 37.5k+ Discord members, 1M+ downloads.* What's next for AutoGPT? The initial release required users to know how to build and run a codebase. They recently announced plans for a web/desktop UI and mobile app to enable nontechnical/everyday users to use AutoGPT. They are also working on an extensible plugin ecosystem called the Abilities Hub also targeted at nontechnical users.* Improving Efficacy. AutoGPT has many well documented cases where it trips up. Getting stuck in loops, using instead of actual content incommands, and making obvious mistakes like execute_code("writea cookbook"'. The plan is a new design called Challenge Driven Development - Challenges are goal-orientated tasks or problems thatAuto-GPT has difficulty solving or has not yet been able to accomplish. These may include improving specific functionalities, enhancing the model's understanding of specific domains, or even developing new features that the current version of Auto-GPT lacks. (AI Maintainer was born out of one such challenge). Itamar compared this with Software 1.0 (Test Driven Development), and Software 2.0 (Dataset Driven Development).* Self-Improvement. Auto-GPT will analyze its own codebase and contribute to its own improvement. AI Safety (aka not-kill-everyone-ists) people like Connor Leahy might freak out at this, but for what it's worth we were pleasantly surprised to learn that Itamar and many other folks on the Auto-GPT team are equally concerned and mindful about x-risk as well.The overwhelming theme of Auto-GPT's roadmap was accessibility - making AI Agents usable by all instead of the few.Podcast Timestamps* [00:00:00] Introductions* [00:01:30] Itamar's background and previous startups* [00:03:30] Vision for Codium AI: reaching “zero bugs”* [00:06:00] Demo of Codium AI and how it works* [00:15:30] Building on VS Code vs JetBrains* [00:22:30] Future of software development and the role of developers* [00:27:00] The vision of integrating natural language, testing, and code* [00:30:00] Benchmarking AI models and choosing the right models for different tasks* [00:39:00] Codium AI spec generation and editing* [00:43:30] Reconciling differences in languages between specs, tests, and code* [00:52:30] The Israeli tech scene and startup culture* [01:03:00] Lightning RoundShow Notes* Codium AI* Visualead* AutoGPT* StarCoder* TDD (Test-Driven Development)* AST (Abstract Syntax Tree)* LangChain* ICON* AI21TranscriptAlessio: [00:00:00] Hey everyone. Welcome to the Latent Space podcast. This is Alessio, Partner and CTO-in-Residence at Decibel Partners. I'm joined by my co-host, Swyx, writer and editor of Latent Space.Swyx: Today we have a special guest, Tamar Friedman, all the way from Tel Aviv, CEO and co-founder of Codium AI. Welcome.Itamar: Hey, great being here. Thank you for inviting me.Swyx: You like the studio? It's nice, right?Itamar: Yeah, they're awesome.Swyx: So I'm gonna introduce your background a little bit and then we'll learn a bit more about who you are. So you graduated from Teknion Israel Institute of Technology's kind of like the MIT of of Israel. You did a BS in CS, and then you also did a Master's in Computer Vision, which is kind of relevant.You had other startups before this, but your sort of claim to fame is Visualead, which you started in 2011 and got acquired by Alibaba Group You showed me your website, which is the sort of QR codes with different forms of visibility. And in China that's a huge, huge deal. It's starting to become a bigger deal in the west. My favorite anecdote that you told me was something about how much sales use you saved or something. I forget what the number was.Itamar: Generally speaking, like there's a lot of peer-to-peer transactions going on, like payments and, and China with QR codes. So basically if for example 5% of the scanning does not work and with our scanner we [00:01:30] reduce it to 4%, that's a lot of money. Could be tens of millions of dollars a day.Swyx: And at the scale of Alibaba, it serves all of China. It's crazy. You did that for seven years and you're in Alibaba until 2021 when you took some time off and then hooked up with Debbie, who you've known for 25 years, to start Codium AI and you just raised your $11 million seed rounds with TlB Partners and Vine. Congrats. Should we go right into Codium? What is Codium?Itamar: So we are an AI coding assistant / agent to help developers reaching zero bugs. We don't do that today. Right now, we help to reduce the amount of bugs. Actually you can see people commenting on our marketplace page saying that they found bugs with our tool, and that's like our premise. Our vision is like for Tesla zero emission or something like that, for us it's zero bugs.We started with building an IDE extension either in VS Code or in JetBrains. And that actually works alongside the main panel where you write your code and I can show later what we do is analyze the code, whether you started writing it or you completed it.Like you can go both TDD (Test-Driven Development) or classical coding. And we offer analysis, tests, whether they pass or not, we further self debug [00:03:00] them and make suggestions eventually helping to improve the code quality specifically on code logic testing.Alessio: How did you get there? Obviously it's a great idea. Like, what was the idea, maze? How did you get here?Itamar: I'll go back long. So, yes I was two and a half times a CTO, VC backed startup CTO where we talked about the last one that I sold to Alibaba. But basically I'm like, it's weird to say by 20 years already of R&D manager, I'm not like the best programmer because like you mentioned, I'm coming more from the machine learning / computer vision side, one, one of the main application, but a lot of optimization. So I'm not necessarily the best coder, but I am like 20 year R&D manager. And I found that verifying code logic is very hard thing. And one of the thing that really makes it difficult to increase the development velocity.So you have tools related to checking performance.You have tools for vulnerabilities and security, Israelis are really good at that. But do you have a tool that actually helps you test code logic? I think what we have like dozens or hundreds, even thousands that help you on the end to end, maybe on the microservice integration system. But when you talk about code level, there isn't anything.So that was the pain I always had, especially when I did have tools for that, for the hardware. Like I worked in Mellanox to be sold to Nvidia as a student, and we had formal tools, et cetera. [00:04:30] So that's one part.The second thing is that after being sold to Alibaba, the team and I were quite a big team that worked on machine learning, large language model, et cetera, building developer tools relate with, with LLMs throughout the golden years of. 2017 to 2021, 2022. And we saw how powerful they became.So basically, if I frame it this way, because we develop it for so many use cases, we saw that if you're able to take a problem put a framework of a language around it, whether it's analyzing browsing behavior, or DNA, or etc, if you can put a framework off a language, then LLMs take you really far.And then I thought this problem that I have with code logic testing is basically a combination of a few languages: natural language, specification language, technical language. Even visual language to some extent. And then I quit Alibaba and took a bit of time to maybe wrap things around and rest a bit after 20 years of startup and corporate and joined with my partner Dedy Kredo who was my ever first employee.And that's how we like, came to this idea.Alessio: The idea has obviously been around and most people have done AST analysis, kinda like an abstract syntax tree, but it's kind of hard to get there with just that. But I think these models now are getting good enough where you can mix that and also traditional logical reasoning.Itamar: Exactly.Alessio: Maybe talk a little bit more about the technical implementation of it. You mentioned the agent [00:06:00] part. You mentioned some of the model part, like what happens behind the scenes when Codium gets in your code base?Itamar: First of all, I wanna mention I think you're really accurate.If you try to take like a large language model as is and try to ask it, can you like, analyze, test the code, etc, it'll not work so good. By itself it's not good enough on the other side, like all the traditional techniques we already started to invent since the Greek times. You know, logical stuff, you mentioned ASTs, but there's also dynamic code analysis, mutation testing, etc. There's a lot of the techniques out there, but they have inefficiencies.And a lot of those inefficiencies are actually matching with AI capabilities. Let me give you one example. Let's say you wanna do fuzzy testing or mutation testing.Mutation testing means that you either mutate the test, like the input of the test, the code of the test, etc or you mutate the code in order to check how good is your test suite.For example, if I mutate some equation in the application code and the test finds a bug and it does that at a really high rate, like out of 100 mutation, I [00:07:30] find all of the 100 problems in the test. It's probably a very strong test suite.Now the problem is that there's so many options for what to mutate in the data, in the test. And this is where, for example, AI could help, like pointing out where's the best thing that you can mutate. Actually, I think it's a very good use case. Why? Because even if AI is not 100% accurate, even if it's 80% accurate, it could really take you quite far rather just randomly selecting things.So if I wrap up, just go back high level. I think LLM by themselves cannot really do the job of verifying code logic and and neither can the traditional ones, so you need to merge them. But then one more thing before maybe you tell me where to double click. I think with code logic there's also a philosophy question here.Logic different from performance or quality. If I did a three for in loop, like I loop three things and I can fold them with some vector like in Python or something like that. We need to get into the mind of the developer. What was the intention? Like what is the bad code? Not what is the code logic that doesn't work. It's not according to the specification. So I think like one more thing that AI could really help is help to match, like if there is some natural language description of the code, we can match it. Or if there's missing information in natural language that needs [00:09:00] to be asked for the AI could help asking the user.It's not like a closed solution. Rather open and leaving the developer as the lead. Just like moving the developer from, from being the coder to actually being like a pilot that that clicks button and say, ah, this is what I meant, or this is the fix, rather actually writing all the code.Alessio: That makes sense. I think I talked about it on the podcast before, but like the switch from syntax to like semantics, like developers used to be focused on the syntax and not the meaning of what they're writing. So now you have the models that are really good at the syntax and you as a human are supposed to be really good at the semantics of what you're trying to build.How does it practically work? So I'm a software developer, I want to use Codium, like how do I start and then like, how do you make that happen in the, in the background?Itamar: So, like I said, Codium right now is an IDE extension. For example, I'm showing VS code. And if you just install it, like you'll have a few access points to start Codium AI, whether this sidebar or above every component or class that we think is very good to check with Codium.You'll have this small button. There's other way you can mark specific code and right click and run code. But this one is my favorite because we actually choose above which components we suggest to use code. So once I click it code, I starts analyzing this class. But not only this class, but almost everything that is [00:10:30] being used by the call center class.But all and what's call center is, is calling. And so we do like a static code analysis, et cetera. What, what we talked about. And then Codium provides with code analysis. It's right now static, like you can't change. It can edit it, and maybe later we'll talk about it. This is what we call the specification and we're going to make it editable so you can add additional behaviors and then create accordingly, test that will not pass, and then the code will, will change accordingly. So that's one entrance point, like via natural language description. That's one of the things that we're working on right now. What I'm showing you by the way, could be downloaded as is. It's what we have in production.The second thing that we show here is like a full test suite. There are six tests by default but you can just generate more almost as much as you want every time. We'll try to cover something else, like a happy pass edge case et cetera. You can talk with specific tests, okay? Like you can suggest I want this in Spanish or give a few languages, or I want much more employees.I didn't go over what's a call center, but basically it manages like call center. So you can imagine, I can a ask to make it more rigorous, etc, but I don't wanna complicate so I'm keeping it as is.I wanna show you the next one, which is run all test. First, we verify that you're okay, we're gonna run it. I don't know, maybe we are connected to the environment that is currently [00:12:00] configured in the IDE. I don't know if it's production for some reason, or I don't know what. Then we're making sure that you're aware we're gonna run the code that and then once we run, we show if it pass or fail.I hope that we'll have one fail. But I'm not sure it's that interesting. So I'll go like to another example soon, but, but just to show you what's going on here, that we actually give an example of what's a problem. We give the log of the error and then you can do whatever you want.You can fix it by yourself, or you can click reflect and fix, and what's going on right now is a bit a longer process where we do like chain of thought or reflect and fix. And we can suggest a solution. You can run it and in this case it passes. Just an example, this is a very simple example.Maybe later I'll show you a bug. I think I'll do that and I'll show you a bug and how we recognize actually the test. It's not a problem in the test, it's a problem in the code and then suggest you fix that instead of the code. I think you see where I'm getting at.The other thing is that there are a few code suggestion, and there could be a dozen of, of types that could be related to performance modularity or I see this case there is a maintainability.There could also be vulnerability or best practices or even suggestion for bugs. Like if we noticed, if we think one of the tests, for example, is failing because of a bug. So just code presented in the code suggestion. Probably you can choose a few, for example, if you like, and then prepare a code change like I didn't show you which exactly.We're making a diff now that you can apply on your code. So basically what, what we're seeing here is that [00:13:30] there are three main tabs, the code, the test and the code analysis. Let's call spec.And then there's a fourth tab, which is a code suggestion, if you wanna look at analytics, etc. Mm-hmm. Right now code okay. This is the change or quite a big change probably clicked on something. So that's the basic demo.Right now let's be frank. Like I wanted to show like a simple example. So it's a call center. All the inputs to the class are like relatively simple. There is no jsm input, like if you're Expedia or whatever, you have a J with the hotels, Airbnb, you know, so the test will be almost like too simple or not covering enough.Your code, if you don't provide it with some input is valuable, like adjacent with all information or YAMA or whatever. So you can actually add input data and the AI or model. It's actually by the way, a set of models and algorithms that will use that input to create interesting tests. And another thing is many people have some reference tests that they already made. It could be because they already made it or because they want like a very specific they have like how they imagine the test. So they just write one and then you add a reference and that will inspire all the rest of the tests. And also you can give like hints. [00:15:00] This is by the way plan to be like dynamic hints, like for different type of code.We will provide different hints. So we can help you become a bit more knowledgeable about how to test your code. So you can ask for like having a, a given one then, or you can have like at a funny private, like make different joke for each test or for example,Swyx: I'm curious, why did you choose that one? This is the pirate one. Yeah.Itamar: Interesting choice to put on your products. It could be like 11:00 PM of people sitting around. Let's choose one funny thingSwyx: and yeah. So two serious ones and one funny one. Yeah. Just for the listening audience, can you read out the other hints that you decided on as well?Itamar: Yeah, so specifically, like for this case, relatively very simple class, so there's not much to do, but I'm gonna go to one more thing here on the configuration. But it basically is given when then style, it's one of the best practices and tests. So even when I report a bug, for example, I found a bug when someone else code, usually I wanna say like, given, use this environment or use that this way when I run this function, et cetera.Oh, then it's a very, very full report. And it's very common to use that in like in unit test and perform.Swyx: I have never been shown this format.Itamar: I love that you, you mentioned that because if you go to CS undergrad you take so many courses in development, but none of them probably in testing, and it's so important. So why would you, and you don't go to Udemy or [00:16:30] whatever and, and do a testing course, right? Like it's, it's boring. Like people either don't do component level testing because they hate it or they do it and they hate it. And I think part of it it's because they're missing tool to make it fun.Also usually you don't get yourself educated about it because you wanna write your code. And part of what we're trying to do here is help people get smarter about testing and make it like easy. So this is like very common. And the idea here is that for different type of code, we'll suggest different type of hints to make you more knowledgeable.We're doing it on an education app, but we wanna help developers become smarter, more knowledgeable about this field. And another one is mock. So right now, our model decided that there's no need for mock here, which is a good decision. But if we would go to real world case, like, I'm part of AutoGPT community and there's all of tooling going on there. Right? And maybe when I want to test like a specific component, and it's relatively clear that going to the web and doing some search and coming back, I don't really need to do that. Like I know what I expect to do and so I can mock that part of using to crawl the web.A certain percentage of accuracy, like around 90, we will decide this is worth mocking and we will inject it. I can click it now and force our system to mock this. But you'll see like a bit stupid mocking because it really doesn't make sense. So I chose this pirate stuff, like add funny pirate like doc stringing make a different joke for each test.And I forced it to add mocks, [00:18:00] the tests were deleted and now we're creating six new tests. And you see, here's the shiver me timbers, the test checks, the call successful, probably there's some joke at the end. So in this case, like even if you try to force it to mock it didn't happen because there's nothing but we might find here like stuff that it mock that really doesn't make sense because there's nothing to mock here.So that's one thing I. I can show a demo where we actually catch a bug. And, and I really love that, you know how it is you're building a developer tools, the best thing you can see is developers that you don't know giving you five stars and sharing a few stuff.We have a discord with thousands of users. But I love to see the individual reports the most. This was one of my favorites. It helped me to find two bugs. I mentioned our vision is to reach zero bugs. Like, if you may say, we want to clean the internet from bugs.Swyx: So debugging the internet. I have my podcast title.Itamar: So, so I think like if we move to another exampleSwyx: Yes, yes, please, please. This is great.Itamar: I'm moving to a different example, it is the bank account. By the way, if you go to ChatGPT and, and you can ask me what's the difference between Codium AI and using ChatGPT.Mm-hmm. I'm, I'm like giving you this hard question later. Yeah. So if you ask ChatGPT give me an example to test a code, it might give you this bank account. It's like the one-on-one stuff, right? And one of the reasons I gave it, because it's easy to inject bugs here, that's easy to understand [00:19:30] anyway.And what I'm gonna do right now is like this bank account, I'm gonna change the deposit from plus to minus as an example. And then I'm gonna run code similarly to how I did before, like it suggests to do that for the entire class. And then there is the code analysis soon. And when we announce very soon, part of this podcast, it's going to have more features here in the code analysis.We're gonna talk about it. Yep. And then there is the test that I can run. And the question is that if we're gonna catch the bag, the bugs using running the test, Because who knows, maybe this implementation is the right one, right? Like you need to, to converse with the developer. Maybe in this weird bank, bank you deposit and, and the bank takes money from you.And we could talk about how this happens, but actually you can see already here that we are already suggesting a hint that something is wrong here and here's a suggestion to put it from minus to to plus. And we'll try to reflect and, and fix and then we will see actually the model telling you, hey, maybe this is not a bug in the test, maybe it's in the code.Swyx: I wanna stay on this a little bit. First of all, this is very impressive and I think it's very valuable. What user numbers can you disclose, you launched it and then it's got fairly organic growth. You told me something off the air, but you know, I just wanted to show people like this is being adopted in quite a large amount.Itamar:  [00:21:00] First of all, I'm a relatively transparent person. Like even as a manager, I think I was like top one percentile being transparent in Alibaba. It wasn't five out of five, which is a good thing because that's extreme, but it was a good, but it also could be a bad, some people would claim it's a bad thing.Like for example, if my CTO in Alibaba would tell me you did really bad and it might cut your entire budget by 30%, if in half a year you're not gonna do like much better and this and that. So I come back to a team and tell 'em what's going on without like trying to smooth thing out and we need to solve it together.If not, you're not fitting in this team. So that's my point of view. And the same thing, one of the fun thing that I like about building for developers, they kind of want that from you. To be transparent. So we are on the high numbers of thousands of weekly active users. Now, if you convert from 50,000 downloads to high thousands of weekly active users, it means like a lot of those that actually try us keep using us weekly.I'm not talking about even monthly, like weekly. And that was like one of their best expectations because you don't test your code every day. Right now, you can see it's mostly focused on testing. So you probably test it like once a week. Like we wanted to make it so smooth with your development methodology and development lifecycle that you use it every day.Like at the moment we hope it to be used weekly. And that's what we're getting. And the growth is about like every two, three weeks we double the amount of weekly and downloads. It's still very early, like seven weeks. So I don't know if it'll keep that way, but we hope so. Well [00:22:30] actually I hope that it'll be much more double every two, three weeks maybe. Thanks to the podcast.Swyx: Well, we, yeah, we'll, we'll add you know, a few thousand hopefully. The reason I ask this is because I think there's a lot of organic growth that people are sharing it with their friends and also I think you've also learned a lot from your earliest days in, in the private beta test.Like what have you learned since launching about how people want to use these testing tools?Itamar: One thing I didn't share with you is like, when you say virality, there is like inter virality and intra virality. Okay. Like within the company and outside the company. So which teams are using us? I can't say, but I can tell you that a lot of San Francisco companies are using us.And one of the things like I'm really surprised is that one team, I saw one user two weeks ago, I was so happy. And then I came yesterday and I saw 48 of that company. So what I'm trying to say to be frank is that we see more intra virality right now than inter virality. I don't see like video being shared all around Twitter. See what's going on here. Yeah. But I do see, like people share within the company, you need to use it because it's really helpful with productivity and it's something that we will work about the [00:24:00] inter virality.But to be frank, first I wanna make sure that it's helpful for developers. So I care more about intra virality and that we see working really well, because that means that tool is useful. So I'm telling to my colleague, sharing it on, on Twitter means that I also feel that it will make me cool or make me, and that's something maybe we'll need, still need, like testing.Swyx: You know, I don't, well, you're working on that. We're gonna announce something like that. Yeah. You are generating these tests, you know, based on what I saw there. You're generating these tests basically based on the name of the functions. And the doc strings, I guess?Itamar:So I think like if you obfuscate the entire code, like our accuracy will drop by 50%. So it's right. We're using a lot of hints that you see there. Like for example, the functioning, the dog string, the, the variable names et cetera. It doesn't have to be perfect, but it has a lot of hints.By the way. In some cases, in the code suggestion, we will actually suggest renaming some of the stuff that will sync, that will help us. Like there's suge renaming suggestion, for example. Usually in this case, instead of calling this variable is client and of course you'll see is “preferred client” because basically it gives a different commission for that.So we do suggest it because if you accept it, it also means it will be easier for our model or system to keep improving.Swyx: Is that a different model?Itamar: Okay. That brings a bit to the topic of models properties. Yeah. I'll share it really quickly because Take us off. Yes. It's relevant. Take us off. Off. Might take us off road.I think [00:25:30] like different models are better on different properties, for example, how obedient you are to instruction, how good you are to prompt forcing, like to format forcing. I want the results to be in a certain format or how accurate you are or how good you are in understanding code.There's so many calls happening here to models by the way. I. Just by clicking one, Hey Codium AI. Can you help me with this bank account? We do a dozen of different calls and each feature you click could be like, like with that reflect and fix and then like we choose the, the best one.I'm not talking about like hundreds of models, but we could, could use different APIs of open AI for example, and, and other models, et cetera. So basically like different models are better on different aspect. Going back to your, what we talked about, all the models will benefit from having those hints in, in the code, that rather in the code itself or documentation, et cetera.And also in the code analysis, we also consider the code analysis to be the ground truth to some extent. And soon we're also going to allow you to edit it and that will use that as well.Alessio: Yeah, maybe talk a little bit more about. How do I actually get all these models to work together? I think there's a lot of people that have only been exposed to Copilot so far, which is one use case, just complete what I'm writing. You're doing a lot more things here. A lot of people listening are engineers themselves, some of them build these tools, so they would love to [00:27:00] hear more about how do you orchestrate them, how do you decide which model the what, stuff like that.Itamar: So I'll start with the end because that is a very deterministic answer, is that we benchmark different models.Like every time this there a new model in, in town, like recently it's already old news. StarCoder. It's already like, so old news like few days ago.Swyx: No, no, no. Maybe you want to fill in what it is StarCoder?Itamar: I think StarCoder is, is a new up and coming model. We immediately test it on different benchmark and see if, if it's better on some properties, et cetera.We're gonna talk about it like a chain of thoughts in different part in the chain would benefit from different property. If I wanna do code analysis and, and convert it to natural language, maybe one model would be, would be better if I want to output like a result in, in a certain format.Maybe another model is better in forcing the, a certain format you probably saw on Twitter, et cetera. People talk about it's hard to ask model to output JSON et cetera. So basically we predefine. For different tasks, we, we use different models and I think like this is for individuals, for developers to check, try to sync, like the test that now you are working on, what is most important for you to get, you want the semantic understanding, that's most important? You want the output, like are you asking for a very specific [00:28:30] output?It's just like a chat or are you asking to give a output of code and have only code, no description. Or if there's a description of the top doc string and not something else. And then we use different models. We are aiming to have our own models in in 2024. Being independent of any other third party, like OpenAI or so, but since our product is very challenging, it has UI/UX challenges, engineering challenge, statical and dynamical analysis, and AI.As entrepreneur, you need to choose your battles. And we thought that it's better for us to, to focus on everything around the model. And one day when we are like thinking that we have the, the right UX/UI engineering, et cetera, we'll focus on model building. This is also, by the way, what we did in in Alibaba.Even when I had like half a million dollar a month for trading one foundational model, I would never start this way. You always try like first using the best model you can for your product. Then understanding what's the glass ceiling for that model? Then fine tune a foundation model, reach a higher glass ceiling and then training your own.That's what we're aiming and that's what I suggest other developers like, don't necessarily take a model and, and say, oh, it's so easy these days to do RLHF, et cetera. Like I see it's like only $600. Yeah, but what are you trying to optimize for? The properties. Don't try to like certain models first, organize your challenges.Understand the [00:30:00] properties you're aiming for and start playing with that. And only then go to train your own model.Alessio: Yeah. And when you say benchmark, you know, we did a one hour long episode, some benchmarks, there's like many of them. Are you building some unique evals to like your own problems? Like how are you doing that? And that's also work for your future model building, obviously, having good benchmarks. Yeah.Itamar:. Yeah. That's very interesting. So first of all, with all the respect, I think like we're dealing with ML benchmark for hundreds of years now.I'm, I'm kidding. But like for tens of years, right? Benchmarking statistical creatures is something that, that we're doing for a long time. I think what's new here is the generative part. It's an open challenge to some extent. And therefore, like maybe we need to re rethink some of the way we benchmark.And one of the notions that I really believe in, I don't have a proof for that, is like create a benchmark in levels. Let's say you create a benchmark from level one to 10, and it's a property based benchmark. Let's say I have a WebGPT ask something from the internet and then it should fetch it for me.So challenge level one could be, I'm asking it and it brings me something. Level number two could be I'm asking it and it has a certain structure. Let's say for example, I want to test AutoGPT. Okay. And I'm asking it to summarize what's the best cocktail I could have for this season in San Francisco.So [00:31:30] I would expect, like, for example, for that model to go. This is my I what I think to search the internet and do a certain thing. So level number three could be that I want to check that as part of this request. It uses a certain tools level five, you can add to that. I expect that it'll bring me back something like relevance and level nine it actually prints the cocktail for me I taste it and it's good. So, so I think like how I see it is like we need to have data sets similar to before and make sure that we not fine tuning the model the same way we test it. So we have one challenges that we fine tune over, right? And few challenges that we don't.And the new concept may is having those level which are property based, which is something that we know from software testing and less for ML. And this is where I think that these two concepts merge.Swyx: Maybe Codium can do ML testing in the future as well.Itamar: Yeah, that's a good idea.Swyx: Okay. I wanted to cover a little bit more about Codium in the present and then we'll go into the slides that you have.So you have some UI/UX stuff and you've obviously VS Code is the majority market share at this point of IDE, but you also have IntelliJ right?Itamar: Jet Brains in general.Swyx: Yeah. Anything that you learned supporting JetBrains stuff? You were very passionate about this one user who left you a negative review.What is the challenge of that? Like how do you think about the market, you know, maybe you should focus on VS Code since it's so popular?Itamar: Yeah. [00:33:00] So currently the VS Code extension is leading over JetBrains. And we were for a long time and, and like when I tell you long time, it could be like two or three weeks with version oh 0.5, point x something in, in VS code, although oh 0.4 or so a jet brains, we really saw the difference in, in the how people react.So we also knew that oh 0.5 is much more meaningful and one of the users left developers left three stars on, on jet brands and I really remember that. Like I, I love that. Like it's what do you want to get at, at, at our stage? What's wrong? Like, yes, you want that indication, you know, the worst thing is getting nothing.I actually, not sure if it's not better to get even the bad indication, only getting good ones to be re frank like at, at, at least in our stage. So we're, we're 9, 10, 10 months old startup. So I think like generally speaking We find it easier and fun to develop in vs code extension versus JetBrains.Although JetBrains has like very nice property, when you develop extension for one of the IDEs, it usually works well for all the others, like it's one extension for PyCharm, and et cetera. I think like there's even more flexibility in the VS code. Like for example, this app is, is a React extension as opposed that it's native in the JetBrains one we're using. What I learned is that it's basically is almost like [00:34:30] developing Android and iOS where you wanna have a lot of the best practices where you have one backend and all the software development like best practices with it.Like, like one backend version V1 supports both under Android and iOS and not different backends because that's crazy. And then you need all the methodology. What, what means that you move from one to 1.1 on the backend? What supports whatnot? If you don't what I'm talking about, if you developed in the past, things like that.So it's important. And then it's like under Android and iOS and, and you relatively want it to be the same because you don't want one developer in the same team working with Jet Brains and then other VS code and they're like talking, whoa, that's not what I'm seeing. And with code, what are you talking about?And in the future we're also gonna have like teams offering of collaboration Right now if you close Codium Tab, everything is like lost except of the test code, which you, you can, like if I go back to a test suite and do open as a file, and now you have a test file with everything that you can just save, but all the goodies here it's lost. One day we're gonna have like a platform you can save all that, collaborate with people, have it part of your PR, like have suggested part of your PR. And then you wanna have some alignment. So one of the challenges, like UX/UI, when you think about a feature, it should, some way or another fit for both platforms be because you want, I think by the way, in iOS and Android, Android sometimes you don't care about parity, but here you're talking about developers that might be on the same [00:36:00] team.So you do care a lot about that.Alessio: Obviously this is a completely different way to work for developers. I'm sure this is not everything you wanna build and you have some hint. So maybe take us through what you see the future of software development look like.Itamar: Well, that's great and also like related to our announcement, what we're working on.Part of it you already start seeing in my, in my demo before, but now I'll put it into a framework. I'll be clearer. So I think like the software development world in 2025 is gonna look very different from 2020. Very different. By the way. I think 2020 is different from 2000. I liked the web development in 95, so I needed to choose geocities and things like that.Today's much easier to build a web app and whatever, one of the cloud. So, but I think 2025 is gonna look very different in 2020 for the traditional coding. And that's like a paradigm I don't think will, will change too much in the last few years. And, and I'm gonna go over that when I, when I'm talking about, so j just to focus, I'm gonna show you like how I think the intelligence software development world look like, but I'm gonna put it in the lens of Codium AI.We are focused on code integrity. We care that with all this advancement of co-generation, et cetera, we wanna make sure that developers can code fast with confidence. That they have confidence on generated code in the AI that they are using that. That's our focus. So I'm gonna put, put that like lens when I'm going to explain.So I think like traditional development. Today works like creating some spec for different companies, [00:37:30] different development teams. Could mean something else, could be something on Figma, something on Google Docs, something on Jira. And then usually you jump directly to code implementation. And then if you have the time or patience, or will, you do some testing.And I think like some people would say that it's better to do TDD, like not everyone. Some would say like, write spec, write your tests, make sure they're green, that they do not pass. Write your implementation until your test pass. Most people do not practice it. I think for just a few, a few reason, let them mention two.One, it's tedious and I wanna write my code like before I want my test. And I don't think, and, and the second is, I think like we're missing tools to make it possible. And what we are advocating, what I'm going to explain is actually neither. Okay. It's very, I want to say it's very important. So here's how we think that the future of development pipeline or process is gonna look like.I'm gonna redo it in steps. So, first thing I think there do I wanna say that they're gonna be coding assistance and coding agents. Assistant is like co-pilot, for example, and agents is something that you give it a goal or a task and actually chains a few tasks together to complete your goal.Let's have that in mind. So I think like, What's happening right now when you saw our demo is what I presented a few minutes ago, is that you start with an implementation and we create spec for you and test for you. And that was like a agent, like you didn't converse with it, you just [00:39:00] click a button.And, and we did a, a chain of thought, like to create these, that's why it's it's an agent. And then we gave you an assistant to change tests, like you can converse it with it et cetera. So that's like what I presented today. What we're announcing is about a vision that we called the DRY. Don't repeat yourself. I'm gonna get to that when I'm, when I'm gonna show you the entire vision. But first I wanna show you an intermediate step that what we're going to release. So right now you can write your code. Or part of it, like for example, just a class abstract or so with a coding assistant like copilot and maybe in the future, like a Codium AI coding assistant.And then you can create a spec I already presented to you. And the next thing is that you going to have like a spec assistant to generate technical spec, helping you fill it quickly focused on that. And this is something that we're working on and, and going to release the first feature very soon as part of announcement.And it's gonna be very lean. Okay? We're, we're a startup that going bottom up, like lean features going to more and more comprehensive one. And then once you have the spec and implementation, you can either from implementation, have tests, and then you can run the test and fix them like I presented to you.But you can also from spec create tests, okay? From the spec directly to tests. [00:40:30]So then now you have a really interesting thing going on here is that you can start from spec, create, test, create code. You can start from test create code. You can start from a limitation. From code, create, spec and test. And actually we think the future is a very flexible one. You don't need to choose what you're practicing traditional TDD or whatever you wanna start with.If you have already some spec being created together with one time in one sprint, you decided to write a spec because you wanted to align about it with your team, et cetera, and now you can go and create tests and implementation or you wanted to run ahead and write your code. Creating tests and spec that aligns to it will be relatively easy.So what I'm talking about is extreme DRY concept; DRY is don't repeat yourself. Until today when we talked about DRY is like, don't repeat your code. I claim that there is a big parts of the spec test and implementation that repeat himself, but it's not a complete repetition because if spec was as detailed as the implementation, it's actually the implementation.But the spec is usually in different language, could be natural language and visual. And what we're aiming for, our vision is enabling the dry concept to the extreme. With all these three: you write your test will help you generate the code and the spec you write your spec will help you doing the test and implementation.Now the developers is the driver, okay? You'll have a lot [00:42:00] of like, what do you think about this? This is what you meant. Yes, no, you wanna fix the coder test, click yes or no. But you still be the driver. But there's gonna be like extreme automation on the DRY level. So that's what we're announcing, that we're aiming for as our vision and what we're providing these days in our product is the middle, is what, what you see in the middle, which is our code integrity agents working for you right now in your id, but soon also part of your Github actions, et cetera, helping you to align all these three.Alessio: This is great. How do you reconcile the difference in languages, you know, a lot of times the specs is maybe like a PM or it's like somebody who's more at the product level.Some of the implementation details is like backend developers for something. Frontend for something. How do you help translate the language between the two? And then I think in the one of the blog posts on your blog, you mentioned that this is also changing maybe how programming language themselves work. How do you see that change in the future? Like, are people gonna start From English, do you see a lot of them start from code and then it figures out the English for them?Itamar: Yeah. So first of all, I wanna say that although we're working, as we speak on managing we front-end frameworks and languages and usage, we are currently focused on the backend.So for example, as the spec, we won't let you input Figma, but don't be surprised if in 2024 the input of the spec could be a Figma. Actually, you can see [00:43:30] demos of that on a pencil drawing from OpenAI and when he exposed the GPT-4. So we will have that actually.I had a blog, but also I related to two different blogs. One, claiming a very knowledgeable and respectful, respectful person that says that English is going to be the new language program language and, and programming is dead. And another very respectful person, I think equally said that English is a horrible programming language.And actually, I think both of are correct. That's why when I wrote the blog, I, I actually related, and this is what we're saying here. Nothing is really fully redundant, but what's annoying here is that to align these three, you always need to work very hard. And that's where we want AI to help with. And if there is inconsistency will raise a question, what do, which one is true?And just click yes or no or test or, or, or code that, that what you can see in our product and we'll fix the right one accordingly. So I think like English and, and visual language and code. And the test language, let's call it like, like that for a second. All of them are going to persist. And just at the level of automation aligning all three is what we're aiming for.Swyx: You told me this before, so I I'm, I'm just actually seeing Alessio's reaction to it as a first time.Itamar: Yeah, yeah. Like you're absorbing like, yeah, yeah.Swyx: No, no. This is, I mean, you know, you can put your VC hat on or like compare, like what, what is the most critical or unsolved question presented by this vision?Alessio: A lot of these tools, especially we've seen a lot in the past, it's like the dynamic nature of a lot of this, you know?[00:45:00] Yeah. Sometimes, like, as you mentioned, sometimes people don't have time to write the test. Sometimes people don't have time to write the spec. Yeah. So sometimes you end up with things. Out of sync, you know? Yeah. Or like the implementation is moving much faster than the spec, and you need some of these agents to make the call sometimes to be like, no.Yeah, okay. The spec needs to change because clearly if you change the code this way, it needs to be like this in the future. I think my main question as a software developer myself, it's what is our role in the future? You know? Like, wow, how much should we intervene, where should we intervene?I've been coding for like 15 years, but if I've been coding for two years, where should I spend the next year? Yeah. Like focus on being better at understanding product and explain it again. Should I get better at syntax? You know, so that I can write code. Would love have any thoughts.Itamar: Yeah. You know, there's gonna be a difference between 1, 2, 3 years, three to six, six to 10, and 10 to 20. Let's for a second think about the idea that programming is solved. Then we're talking about a machine that can actually create any piece of code and start creating, like we're talking about singularity, right?Mm-hmm. If the singularity happens, then we're talking about this new set of problems. Let's put that aside. Like even if it happens in 2041, that's my prediction. I'm not sure like you should aim for thinking what you need to do, like, or not when the singularity happens. So I, [00:46:30] I would aim for mm-hmm.Like thinking about the future of the next five years or or, so. That's my recommendation because it's so crazy. Anyway. Maybe not the best recommendation. Take that we're for grain of salt. And please consult with a lawyer, at least in the scope of, of the next five years. The idea that the developers is the, the driver.It actually has like amazing team members. Agents that working for him or her and eventually because he or she's a driver, you need to understand especially what you're trying to achieve, but also being able to review what you get. The better you are in the lower level of programming in five years, it it mean like real, real program language.Then you'll be able to develop more sophisticated software and you will work in companies that probably pay more for sophisticated software and the more that you're less skilled in, in the actual programming, you actually would be able to be the programmer of the new era, almost a creator. You'll still maybe look on the code levels testing, et cetera, but what's important for you is being able to convert products, requirements, et cetera, to working with tools like Codium AI.So I think like there will be like degree of diff different type developers now. If you think about it for a second, I think like it's a natural evolution. It's, it's true today as well. Like if you know really good the Linux or assembly, et cetera, you'll probably work like on LLVM Nvidia [00:48:00] whatever, like things like that.Right. And okay. So I think it'll be like the next, next step. I'm talking about the next five years. Yeah. Yeah. Again, 15 years. I think it's, it's a new episode if you would like to invite me. Yeah. Oh, you'll be, you'll be back. Yeah. It's a new episode about how, how I think the world will look like when you really don't need a developer and we will be there as Cody mi like you can see.Mm-hmm.Alessio: Do we wanna dive a little bit into AutoGPT? You mentioned you're part of the community. Yeah.Swyx: Obviously Try, Catch, Finally, Repeat is also part of the company motto.Itamar: Yeah. So it actually really. Relates to what we're doing and there's a reason we have like a strong relationship and connection with the AutoGPT community and us being part part of it.So like you can see, we're talking about agent for a few months now, and we are building like a designated, a specific agent because we're trying to build like a product that works and gets the developer trust to have developer trust us. We're talking about code integrity. We need it to work. Like even if it will not put 100% it's not 100% by the way our product at all that UX/UI should speak the language of, oh, okay, we're not sure here, please take the driving seat.You want this or that. But we really not need, even if, if we're not close to 100%, we still need to work really well just throwing a number. 90%. And so we're building a like really designated agents like those that from code, create tests.So it could create tests, run them, fix them. It's a few tests. So we really believe in that we're [00:49:30] building a designated agent while Auto GPT is like a swarm of agents, general agents that were supposedly you can ask, please make me rich or make me rich by increase my net worth.Now please be so smart and knowledgeable to use a lot of agents and the tools, et cetera, to make it work. So I think like for AutoGPT community was less important to be very accurate at the beginning, rather to show the promise and start building a framework that aims directly to the end game and start improving from there.While what we are doing is the other way around. We're building an agent that works and build from there towards that. The target of what I explained before. But because of this related connection, although it's from different sides of the, like the philosophy of how you need to build those things, we really love the general idea.So we caught it really early that with Toran like building it, the, the maker of, of AutoGPT, and immediately I started contributing, guess what, what did I contribute at the beginning tests, right? So I started using Codium AI to build tests for AutoGPT, even, even finding problems this way, et cetera.So I become like one of the, let's say 10 contributors. And then in the core team of the management, I talk very often with with Toran on, on different aspects. And we are even gonna have a workshop,Swyx: a very small [00:49:00] meetingItamar: work meeting workshop. And we're going to compete together in a, in a hackathons.And to show that AutoGPT could be useful while, for example, Codium AI is creating the test for it, et cetera. So I'm part of that community, whether is my team are adding tests to it, whether like advising, whether like in in the management team or whether to helping Toran. Really, really on small thing.He is the amazing leader like visionaire and doing really well.Alessio: What do you think is the future of open source development? You know, obviously this is like a good example, right? You have code generating the test and in the future code could actually also implement the what the test wanna do. So like, yeah.How do you see that change? There's obviously not enough open source contributors and yeah, that's one of the, the main issue. Do you think these agents are maybe gonna help us? Nadia Eghbal has this  great book called like Working in Public and there's this type of projects called Stadium model, which is, yeah, a lot of people use them and like nobody wants to contribute to them.I'm curious about, is it gonna be a lot of noise added by a lot of these agents if we let them run on any repo that is open source? Like what are the contributing guidelines for like humans versus agents? I don't have any of the answers, but like some of the questions that I've been thinking about.Itamar: Okay. So I wanna repeat your question and make sure I understand you, but like, if they're agents, for example, dedicated for improving code, why can't we run them on, mm-hmm.Run them on like a full repository in, in fixing that? The situation right now is that I don't think that right now Auto GPT would be able to do that for you. Codium AI might but it's not open sourced right now. And and like you can see like in the months or two, you will be able to like running really quickly like development velocity, like our motto is moving fast with confidence by the way.So we try to like release like every day or so, three times even a day in the backend, et cetera. And we'll develop more feature, enable you, for example, to run an entire re, but, but it's not open source. So about the open source I think like AutoGPT or LangChain, you can't really like ask please improve my repository, make it better.I don't think it will work right now because because let me like. Softly quote Ilya from Open AI. He said, like right now, let's say that a certain LLM is 95% accurate. Now you're, you're concatenating the results. So the accuracy is one point like it's, it's decaying. And what you need is like more engineering frameworks and work to be done there in order to be able to deal with inaccuracies, et cetera.And that's what we specialize in Codium, but I wanna say that I'm not saying that Auto GPT won't be able to get there. Like the more tools and that going to be added, the [00:52:30] more prompt engineering that is dedicated for this, this idea will be added by the way, where I'm talking with Toran, that Codium, for example, would be one of the agents for Auto GPT.Think about it AutoGPT is not, is there for any goal, like increase my net worth, though not focused as us on fixing or improving code. We might be another agent, by the way. We might also be, we're working on it as a plugin for ChatGPT. We're actually almost finished with it. So that's like I think how it's gonna be done.Again, open opensource, not something we're thinking about. We wanted to be really good before weSwyx: opensource it. That was all very impressive. Your vision is actually very encouraging as well, and I, I'm very excited to try it out myself. I'm just curious on the Israel side of things, right? Like you, you're visiting San Francisco for a two week trip for this special program you can tell us about. But also I think a lot of American developers have heard that, you know, Israel has a really good tech scene. Mostly it's just security startups. You know, I did some, I was in some special unit in the I D F and like, you know, I come out and like, I'm doing the same thing again, but like, you know, for enterprises but maybe just something like, describe for, for the rest of the world.It's like, What is the Israeli tech scene like? What is this program that you're on and what shouldItamar: people know? So I think like Israel is the most condensed startup per capita. I think we're number one really? Or, or startup pair square meter. I think, I think we're number one as well because of these properties actually there is a very strong community and like everyone are around, like are [00:57:00] working in a.An entrepreneur or working in a startup. And when you go to the bar or the coffee, you hear if it's 20, 21, people talking about secondary, if it's 2023 talking about like how amazing Geni is, but everyone are like whatever are around you are like in, in the scene. And, and that's like a lot of networking and data propagation, I think.Somehow similar here to, to the Bay Area in San Francisco that it helps, right. So I think that's one of our strong points. You mentioned some others. I'm not saying that it doesn't help. Yes. And being in the like idf, the army, that age of 19, you go and start dealing with technology like very advanced one, that, that helps a lot.And then going back to the community, there's this community like is all over the world. And for example, there is this program called Icon. It's basically Israelis and in the Valley created a program for Israelis from, from Israel to come and it's called Silicon Valley 1 0 1 to learn what's going on here.Because with all the respect to the tech scene in Israel here, it's the, the real thing, right? So, so it's an non-profit organization by Israelis that moved here, that brings you and, and then brings people from a 16 D or, or Google or Navon or like. Amazing people from unicorns or, or up and coming startup or accelerator, and give you up-to-date talks and, and also connect you to relevant people.And that's, that's why I'm here in addition to to, you know, to [00:58:30] me and, and participate in this amazing podcast, et cetera.Swyx: Yeah. Oh, well, I, I think, I think there's a lot of exciting tech talent, you know, in, in Tel Aviv, and I, I'm, I'm glad that your offer is Israeli.Itamar: I, I think one of thing I wanted to say, like yeah, of course, that because of what, what what we said security is, is a very strong scene, but a actually water purification agriculture attack, there's a awful other things like usually it's come from necessity.Yeah. Like, we have big part of our company of our state is like a desert. So there's, there's other things like ai by the way is, is, is big also in Israel. Like, for example, I think there's an Israeli competitor to open ai. I'm not saying like it's as big, but it's ai 21, I think out of 10.Yeah. Out. Oh yeah. 21. Is this really? Yeah. Out of 10 like most, mm-hmm. Profound research labs. Research lab is, for example, I, I love, I love their. Yeah. Yeah.Swyx: I, I think we should try to talk to one of them. But yeah, when you and I met, we connected a little bit Singapore, you know, I was in the Singapore Army and Israeli army.We do have a lot of connections between countries and small countries that don't have a lot of natural resources that have to make due in the world by figuring out some other services. I think the Singapore startup scene has not done as well as the Israeli startup scene. So I'm very interested in, in how small, small countries can have a world impact essentially.Itamar: It's a question we're being asked a lot, like why, for example, let's go to the soft skills. I think like failing is a bad thing. Yeah. Like, okay. Like sometimes like VCs prefer to [01:00:00] put money on a, on an entrepreneur that failed in his first startup and actually succeeded because now that person is knowledgeable, what it mean to be, to fail and very hungry to, to succeed.So I think like generally, like there's a few reason I think it's hard to put the finger exactly, but we talked about a few things. But one other thing I think like failing is not like, this is my fourth company. I did one as, it wasn't a startup, it was a company as a teenager. And then I had like my first startup, my second company that like, had a amazing run, but then very beautiful collapse.And then like my third company, my second startup eventually exit successfully to, to Alibaba. So, so like, I think like it's there, there are a lot of trial and error, which is being appreciated, not like suppressed. I guess like that's one of the reason,Alessio: wanna jump into lightning round?Swyx: Yes. I think we send you into prep, but there's just three questions now.We've, we've actually reduced it quite a bit, but you have it,Alessio: so, and we can read them that you can take time and answer. You don't have to right away. First question, what is a already appin in AI that Utah would take much longer than an sItamar: Okay, so I have to, I hope it doesn't sound like arrogant,

UTVECKLA
42. Test Driven Development (TDD) | Kristofer Linnestjerna, systemutvecklare Consid

UTVECKLA

Play Episode Listen Later Mar 6, 2023 53:07


I avsnitt 42 av Utveckla snackar vi TDD – Test Driven Development – med Kristofer Linnestjerna, systemutvecklare på Consid Göteborg!  Vad är TDD, varför använder man det, när passar det, när är det mindre lämpligt, vilka verktyg kan man ta hjälp av och var börjar man som fullkomlig gröngöling? Dessa frågor, och många fler, får vi svar på i det här avsnittet. Dessutom avslöjar Kristofer hemligheten bakom riktigt välgrillad kyckling och hur han fick en hel Erasmus-klass att gapa av förvåning i Aberdeen. Tidskoder: 0.31 Programledare Simon Zachrisson och Lily Tsui hälsar hej och välkomna och delar med sig av sina bästa tält-tips. 5.44 Dagens ämne: TDD. 7.13 Välkommen dagens gäst: Kristofer Linnestjerna! 7.51 Detta är TDD – Kristofer gör en kort hisspitch. 8.32 Så använder Kristofer TDD. 9.21 Kristofer berättar om sin snabbt avklarade karriär i TV4:s Grillmästarna och avslöjar hur man grillar kyckling utan att det blir torrt. 11.57 Så kom Kristofer in i utvecklingsbranschen. 12.36 Kristofer berättar om sitt Erasmus-utbyte i Aberdeen och hur han chockade sina kurskamrater. 14.28 Så gick det till när Kristofer började jobba med TDD. 16.44 Så kan ett exempeltest se ut. 18.55 Dessa har lätt att ta till sig TDD-tänket. 20.11 Vilka testmönster ryms inom TDD-begreppet? 20.50 Om test-täckning. 23.15 Leder TDD till mer läsbar kod? 24.45 Vad kan ett enskilt test ha för metodnamn? 25.40 Dessa produkter kan man använda. 28.35 Detta är FakeItEasy. 32.06 Så säljer Kristofer in TDD till kollegor och beställare. 32.41 Måste alla i ett projekt vilja köra TDD för att det ska funka? 33.02 Så motiverar man för kund att arbetssättet kommer ta mer tid, i början. 34.29 Simon mansplainar isbergsprincipen. 35.04 Dessa vanliga missuppfattningar om TDD möter Kristofer på jobbet. 36.18 Detta är den vanligaste bakgrunden hos dem som jobbar med TDD. 37.26 Så jobbar man med TDD i agila team. 38.32 Så involverar man kravställaren i TDD. 39.04 När är ett problem för omfattande för att det ska funka med TDD? 41.56 När är det olämpligt att använda TDD? 43.01 Så kommer sättet man jobbar med enhetstester utvecklas framöver. 44.02 Dessa verktyg är bra att använda för den som vill komma igång med TDD. 44.49 Så kommer du igång. 46.39 Tusen tack Kristofer! 47.03 Simon och Lily debriefar, försöker sammanfatta vad de har lärt sig och uppmanar lyssnarna att höra av sig med tips och önskemål om ämnen och gäster på utveckla@consid.se eller på instagram @utvecklapodcast. 52.18 Tack och hej! Intressanta länkar: https://www.adlibris.com/se/bok/clean-code-9780132350884 https://xunit.net/ https://nunit.org/ https://fakeiteasy.github.io/ https://fluentassertions.com/

Arch-In-Minutes
TDD Test-Driven Development | Conteúdo completo | Você ArcHExpert

Arch-In-Minutes

Play Episode Listen Later Apr 26, 2022 21:51


Neste conteúdo vamos falar com mais detalhes sobre o TDD: o que é; como funciona; quando utilizar; quando não utilizar e a importância desta metodologia de desenvolvimento para o seu projeto.Conheça a nossa rede social focada em arquitetura:https://one.archoffice.tech

neste antonio conte conhe completo tdd tdd test driven development
Macht der Craft
Tests gehören auch dazu! – Teil III

Macht der Craft

Play Episode Listen Later Sep 6, 2021 48:04


In den ersten zwei Teile der Mini-Reihe "Tests gehören auch dazu", haben Matthias und Alex über Testautomatisierung und die Testpyramide geredet. In diese Folge reden sie über TDD - Test Driven Development. TDD zählt zu den Test-First-Ansätze und sagt, dass wir die Tests schreiben sollen bevor der produktiven Code entstanden ist. Mag befremdlich klingen, wenn man es nicht kennt. Ist aber eine sehr gute Methode, um die Testbarkeit und Korrektheit des Codes zu verbessern. Denke daran je früher ein Fehler gefunden wird, desto günstiger und leichter ist er zu beheben. Die Beiden geben dir einen Überblick darüber, was die Methode ist, wie sie angewandt wird und welche Varianten es davon gibt. Damit bist Du in der Lage, diese Methode in deinen Werkzeuggürtel zu integrieren und für deine täglichen Arbeit zu nutzen. Es lohnt sich! Vielen Dank fürs zuhören.

Working Code
009: Testing

Working Code

Play Episode Listen Later Feb 10, 2021 58:12


There are very few people in the programming world who will argue against the idea of testing software. But, when it comes to the mechanisms though which code is tested, the conversation starts to get interesting. There are those who feel that TDD - Test Driven Development - is "the way"; and, that any divergence from TDD is not only laziness but is, in fact, borderline malfeasance. At the other end of the spectrum are the people who perform all their testing manually; often, relying on QA (Quality Assurance) teams and smoke tests to find regressions before each deployment. Most people sit somewhere in the middle of these extremes. This week, the crew talks about their own views and experience with testing; and, how they currently implement testing at work. Ben swings heavily towards the manual testing end of the spectrum; Adam and Carol swing heavily towards the automated end of the spectrum; and Tim, who often feels very hypocritical, sits somewhere in the middle. ---------------- Triumphs & Fails ---------------- * Adam's Triumph: He's been working hard to get his company's application migrated over to a new open-source software stack. And, as of this recording, he's successfully moved 9 of his 13 production servers over to the new setup; and, everything seems to be running smoothly! He's feeling very strong on hitting his goals of migrating the rest of the servers by the end of January. * Ben's Failure: This week has been kicking his butt ! He hasn't been sleeping well, he can't get comfortable in his chair, and everything seems to hurt. He's carrying a boat-load of tension in his neck and shoulders and he just can't seem to get past it. The only saving grace is that he can use his "standing desk" controls to select the perfect height for sitting. * Carol's Failure: She's also having a tough time getting comfortable! Her body hurts from her tail-bone up to her head; and, the heating pad she's using just ain't doing it. She's currently on the hunt for a new chair that might help offer some relief. But, being the Amazonian warrior that she is makes things a bit more challenging. As she says: "I can't help it - I have six feet of legs and they have to go somewhere!" And, as the icing on the cake, she accidentally deleted the configuration settings for all seven of her home networks. She had automatic backups configured; but, she accidentally turned them off 3-months ago. * Tim's Triumph: It's been a while since he was able to get into a groove; but, this week, he finally achieved flow state: that moment when the world disappears, time loses meaning, and all you can see is the code in front of you as it appears to pour out of your hands without effort or thought. He summed this feeling up quite nicely: "I feel less like I'm pushing a stone uphill and more like there's a river just flowing through me." I mean, come on, he even wrote a Regular Expression! ------------- Notes & Links ------------- * Pure Function ( https://en.wikipedia.org/wiki/Pure_function ) - a function that produced no side-effects; and, whose outputs are determined entirely by its inputs. * CFML ( https://www.lucee.org/ ) - ColdFusion Markup Language, a language specification for one of the most powerful web application runtimes. * Jest ( https://jestjs.io/ ) - a popular JavaScript testing framework. * Unit testing ( https://en.wikipedia.org/wiki/Unit_testing ) - a low-level test of an individual unit of code. * Integration testing ( https://en.wikipedia.org/wiki/Integration_testing ) - a mid-level test of a group of software units running together. * End-to-End / Functional testing - a high-level test of an entire software system, typically looking at happy paths through an application. * Manual testing - using human to run tests on a piece of software. * Automated testing - using computers to run tests on a piece of software. * Static testing - evaluation of code without having to execute it (think linters and strongly typed languages). * Testing budget - a concept in which the tests that can block a deployment have to run within a certain time window. * Rich Hickey: YouTube ( https://www.youtube.com/results?search_query=rich+hickey ) - please, just go watch all of his videos. * Software regression ( https://en.wikipedia.org/wiki/Software_regression ) - a bug that appears, and often breaks, a previously-working piece of code. * Guillermo Rauch ( https://rauchg.com/ ) - CEO of Vercel ( https://vercel.com/ ). * REST Assured ( https://rest-assured.io/ ) - a testing framework for application APIs. * Gatling ( https://gatling.io/ ) - load testing software. * Feature flags ( https://launchdarkly.com/features/feature-flags/ ) - tooling that allows you to turn parts of an application on or off without having to redeploy it. * Strangler pattern * Ben Nadel: My Personal Best Practices For Using LaunchDarkly Feature Flags ( https://www.bennadel.com/blog/3766-my-personal-best-practices-for-using-launchdarkly-feature-flags.htm ) - a tome that Ben wrote on how he uses feature flags. * Kent C Dodds: Testing JavaScript ( https://testingjavascript.com/ ) - a popular online course about about testing JavaScript. * EggHead.io ( https://egghead.io/ ) - a popular subscription service that provides tutorials on web application development. * MockBox ( https://testbox.ortusbooks.com/mocking/mockbox ) - a module within TestBox that allows the internal execution of a software module to be observed. Follow the show! Our website is workingcode.dev ( https://workingcode.dev/ ) and we're @WorkingCodePod on Twitter ( https://twitter.com/WorkingCodePod ) and Instagram ( https://www.instagram.com/workingcodepod/ ). New episodes weekly on Wednesday. And, if you're *feeling the love* , support us on Patreon ( https://www.patreon.com/workingcodepod ).

CEO.FM
#362 開発が捗るテスト駆動開発は応用が効く

CEO.FM

Play Episode Listen Later Jan 18, 2021 6:40


テスト駆動開発(TDD: Test Driven Development)で開発やると自分は捗ります。機械的に開発できる感じが心地よいです。テストファーストはちょっとハードル高いんですが、やると効率があがっているという実感があります(TDD is deadは触れませんw)。CEOFMのテーマである組織やクリエイティブに応用できると思っていてTDD is alive!な配信回です。 【ご意見・ご感想はTwitterアカウント@tchikubaまで。ハッシュタグは #ceofm です】 https://twitter.com/tchikuba stand.fmもやってます。 https://stand.fm/channels/5f9806a5ae8f04299777b920

tdd tdd test driven development
Bitpicking
TDD! Do you know me?

Bitpicking

Play Episode Listen Later Mar 17, 2020 49:07


Mark & Greg tackle TDD - Test Driven Development. What is it? When should you do it? How can you make it stick?

tdd test driven development
Scrum Life
Arrêter de créer des régressions grâce au TDD, avec Benoit Gantaume

Scrum Life

Play Episode Listen Later Apr 12, 2019 8:16


Pour voir la version vidéo : https://youtu.be/zerAfNIcrZM ----- Que faire lorsque le développement d'un logiciel n'est plus possible, qu'on enchaîne incident sur incident, et que le moindre changement provoque nécessairement des régressions ? Benoit Gantaume partage son point de vue : il faut reprendre la maîtrise du développement logiciel, et la pratique au cœur est le TDD -- Test-Driven Development. Pour contacter Benoit Gantaume, artisan développeur : - http://artisandeveloppeur.fr/ - Twitter : https://twitter.com/gantaume - LinkedIn : https://www.linkedin.com/in/benoitgantaume/ Liens en rapport avec cette vidéo : - Scrum Life #49 avec Sébastien Lavallée sur l'intégration continue : https://youtu.be/70LqFphGmC8 - Meetup Agile Testing Paris par Sam Joch "La qualité vue par un Dev Web" : https://youtu.be/wu48cQWMA-Q Pour soutenir Scrum Life, participez au Tipeee : https://tipeee.com/scrum-life Ou bien participez à l'écriture des sous-titres : https://www.youtube.com/timedtext_editor?action_mde_edit_form=1&v=zerAfNIcrZM&lang=fr&ui=hd&ref=ic&tab=captions Suivez-moi et contactez-moi sur les réseaux sociaux et sur mon blog ! - https://jp-lambert.me - Twitter : https://twitter.com/jpierrelambert - Instagram : https://www.instagram.com/jpierrelambert/ - LinkedIn : https://www.linkedin.com/in/jp-lambert/ - Facebook : https://www.facebook.com/jplfanclub L'équipe Scrum Life : Générique : Edvin Candon Tournage : Jean-Pierre Lambert Montage : Constantin Guay (Twitter : @cog_g) ... et merci à la communauté -- 3820 abonnés au moment de la publication !!!

crer benoit decr liens arr ter lavall tipeee tdd test driven development scrum life
NDS FM
013. TDDBC 長岡開催 - TDD とは何か?テストを開発に活用する

NDS FM

Play Episode Listen Later Jan 18, 2019 61:40


第13回NDSFMはまさるさん(masaru_b_cl) をゲストにお迎えしてTDDBC長岡の開催前情報としてTDDとは何か、TDDBCに参加するとどんなことが体験できるのかについて話しました。

PHP Web Development Podcast with Mathew Kimani.

Continuing from last week, we will be talking about TDD - Test Driven Development  & BDD - Behaviour Driven Development. What  does TDD & BDD mean and what is the importance of it?

tdd test driven development
DevTales Podcast
9 adás: Commitlist.io, Edge, Stylish, TDD (Test Driven Development).

DevTales Podcast

Play Episode Listen Later Jul 16, 2018 33:58


A DevTales 9. adásának fő témája a TDD (Test Driven Development) volt, emellett beszéltünk az Edge-ről, a Stylish Google Chrome kiegészítőről és a commitlist.io-ról is szót váltottunk.

stylish tdd tdd test driven development
PHP Web Development Podcast with Mathew Kimani.

Continuing from last week, we will be talking about TDD - Test Driven Development  & BDD - Behaviour Driven Development. What  does TDD & BDD mean and what is the importance of it?

tdd test driven development
Cross Cutting Concerns Podcast
Podcast 002 - Craig Stuntz on Idris

Cross Cutting Concerns Podcast

Play Episode Listen Later Jun 19, 2016 20:25


Craig Stuntz talks about an Incredibly Strange Programming Language: Idris. Show notes: Craig's slides for Incredibly Strange Programming Languages Stir Trek conference The Sapir-Whorf hypothesis Type-Driven Development With Idris, by Edwin Brady TDD (Test Driven Development). If you've never heard of that, check out Kent Beck's seminal book, Test Driven Development: By Example. Improving Enterprises Papers We Love - Columbus Craig Stuntz's blog Craig Stuntz on Twitter Want to be on the next episode? You can! All you need is the willingness to talk about something technical. Theme music is "Crosscutting Concerns" by The Dirty Truckers, check out their music on Amazon or iTunes.

amazon technology software computers lightning programming talks linguistics kent beck sapir whorf tdd test driven development test driven development by example edwin brady test driven development kent beck
3 Minutes with Kent
Q&A: Thoughts on TDD (Test Driven Development)

3 Minutes with Kent

Play Episode Listen Later Jun 7, 2016 2:57


I was asked (https://github.com/kentcdodds/ama/issues/137) on my AMA (https://github.com/kentcdodds/ama) about my opinoin on Test Driven Development (https://en.wikipedia.org/wiki/Test-driven_development) (or TDD).

ama tdd test driven development
All Ruby Podcasts by Devchat.tv
208 RR Erlang with Francesco Cesarini

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later May 20, 2015 62:06


Check out and sign up for Ruby Remote Conf! 02:45 - Francesco Cesarini Introduction Twitter GitHub Erlang Solutions Books: Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Larger Cover Erlang By Example by Francesco Cesarini and Simon Thompson Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski 03:08 - Erlang Programming Language Multicore [Stack Overflow] paralellel processing - Erlang on multicore CPU History Ericsson Home of Erlang/OTP 08:23 - Francesco and Erlang Joe Armstrong Blog 10:49 - Building a Company Around a Language (Erlang Solutions) Products: MongooseIM WombatOAM Riak NoSQL Database Events: Erlang User Conference Erlang Factory Code Mesh Projects: T-Mobile SMS Gateway Instant Messaging Gateway (2008-2009) Preemptive Support, Monitoring, Metrics & Alarming (WombatOAM) 16:00 - The Erlang Programming Language Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes Pharo by Example The Concurrency Model Debugging Live Code Upgrade Smalltalk The Elixir Programming Language OTP (Open Telecom Platform) 24:25 - Error Handling Semantics Actors and Supervisors The Client-Server Behavior The Event Handler Finite State Machines 30:23 - Getting Started with Erlang Resources: Programming Erlang: Software for a Concurrent World by Joe Armstrong Functional Programming with Erlang (Erlang MOOC) Learn You Some Erlang Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Major Hurdles to Learning Erlang: Understanding Tail Recursion and Pattern Matching Concurrency Error Handling 34:23 - Elixir 35:28 - Erlang and Polyglot Architecture RabbitMQ 37:01 - WombatOAM 38:57 - Erlang Pros and Cons Cons: Number Crunching Parallelism Graphics, Web Development, and Frontends Pros: REST APIs webmachine cowboy 40:44 - TDD (Test-Driven Development) common_test EUnit QuickCheck mnesia Shrinking 46:10 - Languages/Technologies on the Horizon (for Francesco) Elixir Large-Scale Distributed Computing FlowForwarding [GitHub] FlowForwarding 48:21 - The Erlang Community The Erlang Mailing List Erlang Central 50:24 - Writing Apps with Erlang / IoT? Picks Avdi Grimm: A Personal Programming Language Roadmap (Avdi) Pharo (Avdi) Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes (Avdi) Babel-17 / Empire Star by Samuel R. Delany (Coraline) Orson Welles (Coraline) John Hughes: QuickCheck Evolution @ CodeMesh 2014 (Jessica) Vehicles: Experiments in Synthetic Psychology by Valentino Braitenberg (Jessica) Zero to One: Notes On Startups, or How to Build the Future by Peter Thiel (Francesco) CodeNewbie Podcast (Chuck) Ask Me Another (Chuck) Startups For the Rest of Us (Chuck)

Ruby Rogues
208 RR Erlang with Francesco Cesarini

Ruby Rogues

Play Episode Listen Later May 20, 2015 62:06


Check out and sign up for Ruby Remote Conf! 02:45 - Francesco Cesarini Introduction Twitter GitHub Erlang Solutions Books: Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Larger Cover Erlang By Example by Francesco Cesarini and Simon Thompson Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski 03:08 - Erlang Programming Language Multicore [Stack Overflow] paralellel processing - Erlang on multicore CPU History Ericsson Home of Erlang/OTP 08:23 - Francesco and Erlang Joe Armstrong Blog 10:49 - Building a Company Around a Language (Erlang Solutions) Products: MongooseIM WombatOAM Riak NoSQL Database Events: Erlang User Conference Erlang Factory Code Mesh Projects: T-Mobile SMS Gateway Instant Messaging Gateway (2008-2009) Preemptive Support, Monitoring, Metrics & Alarming (WombatOAM) 16:00 - The Erlang Programming Language Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes Pharo by Example The Concurrency Model Debugging Live Code Upgrade Smalltalk The Elixir Programming Language OTP (Open Telecom Platform) 24:25 - Error Handling Semantics Actors and Supervisors The Client-Server Behavior The Event Handler Finite State Machines 30:23 - Getting Started with Erlang Resources: Programming Erlang: Software for a Concurrent World by Joe Armstrong Functional Programming with Erlang (Erlang MOOC) Learn You Some Erlang Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Major Hurdles to Learning Erlang: Understanding Tail Recursion and Pattern Matching Concurrency Error Handling 34:23 - Elixir 35:28 - Erlang and Polyglot Architecture RabbitMQ 37:01 - WombatOAM 38:57 - Erlang Pros and Cons Cons: Number Crunching Parallelism Graphics, Web Development, and Frontends Pros: REST APIs webmachine cowboy 40:44 - TDD (Test-Driven Development) common_test EUnit QuickCheck mnesia Shrinking 46:10 - Languages/Technologies on the Horizon (for Francesco) Elixir Large-Scale Distributed Computing FlowForwarding [GitHub] FlowForwarding 48:21 - The Erlang Community The Erlang Mailing List Erlang Central 50:24 - Writing Apps with Erlang / IoT? Picks Avdi Grimm: A Personal Programming Language Roadmap (Avdi) Pharo (Avdi) Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes (Avdi) Babel-17 / Empire Star by Samuel R. Delany (Coraline) Orson Welles (Coraline) John Hughes: QuickCheck Evolution @ CodeMesh 2014 (Jessica) Vehicles: Experiments in Synthetic Psychology by Valentino Braitenberg (Jessica) Zero to One: Notes On Startups, or How to Build the Future by Peter Thiel (Francesco) CodeNewbie Podcast (Chuck) Ask Me Another (Chuck) Startups For the Rest of Us (Chuck)

Devchat.tv Master Feed
208 RR Erlang with Francesco Cesarini

Devchat.tv Master Feed

Play Episode Listen Later May 20, 2015 62:06


Check out and sign up for Ruby Remote Conf! 02:45 - Francesco Cesarini Introduction Twitter GitHub Erlang Solutions Books: Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Larger Cover Erlang By Example by Francesco Cesarini and Simon Thompson Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski 03:08 - Erlang Programming Language Multicore [Stack Overflow] paralellel processing - Erlang on multicore CPU History Ericsson Home of Erlang/OTP 08:23 - Francesco and Erlang Joe Armstrong Blog 10:49 - Building a Company Around a Language (Erlang Solutions) Products: MongooseIM WombatOAM Riak NoSQL Database Events: Erlang User Conference Erlang Factory Code Mesh Projects: T-Mobile SMS Gateway Instant Messaging Gateway (2008-2009) Preemptive Support, Monitoring, Metrics & Alarming (WombatOAM) 16:00 - The Erlang Programming Language Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes Pharo by Example The Concurrency Model Debugging Live Code Upgrade Smalltalk The Elixir Programming Language OTP (Open Telecom Platform) 24:25 - Error Handling Semantics Actors and Supervisors The Client-Server Behavior The Event Handler Finite State Machines 30:23 - Getting Started with Erlang Resources: Programming Erlang: Software for a Concurrent World by Joe Armstrong Functional Programming with Erlang (Erlang MOOC) Learn You Some Erlang Designing for Scalability with Erlang/OTP: Implementing Robust, Fault-Tolerant Systems by Francesco Cesarini and Steve Vinoski Erlang Programming: A Concurrent Approach to Software Development by Francesco Cesarini and Simon Thompson Major Hurdles to Learning Erlang: Understanding Tail Recursion and Pattern Matching Concurrency Error Handling 34:23 - Elixir 35:28 - Erlang and Polyglot Architecture RabbitMQ 37:01 - WombatOAM 38:57 - Erlang Pros and Cons Cons: Number Crunching Parallelism Graphics, Web Development, and Frontends Pros: REST APIs webmachine cowboy 40:44 - TDD (Test-Driven Development) common_test EUnit QuickCheck mnesia Shrinking 46:10 - Languages/Technologies on the Horizon (for Francesco) Elixir Large-Scale Distributed Computing FlowForwarding [GitHub] FlowForwarding 48:21 - The Erlang Community The Erlang Mailing List Erlang Central 50:24 - Writing Apps with Erlang / IoT? Picks Avdi Grimm: A Personal Programming Language Roadmap (Avdi) Pharo (Avdi) Avdi Grimm: In Which I Make You Hate Ruby in 7 Minutes (Avdi) Babel-17 / Empire Star by Samuel R. Delany (Coraline) Orson Welles (Coraline) John Hughes: QuickCheck Evolution @ CodeMesh 2014 (Jessica) Vehicles: Experiments in Synthetic Psychology by Valentino Braitenberg (Jessica) Zero to One: Notes On Startups, or How to Build the Future by Peter Thiel (Francesco) CodeNewbie Podcast (Chuck) Ask Me Another (Chuck) Startups For the Rest of Us (Chuck)

Ruby Rogues
205 RR Eight Years of Ruby and Rails with Piotr Solnica

Ruby Rogues

Play Episode Listen Later Apr 29, 2015 82:28


02:25 - Piotr Solnica Introduction Twitter GitHub Blog Ruby Object Mapper (ROM)     virtus 03:04 - Piotr Solnica: 8 Things I Learned During 8 Years of Ruby and Rails 03:45 - Test-Driven Development 06:17 - Building a Stack Roda [YouTube] Jeremy Evans: Better Routing Through Trees (MountainWest RubyConf 2015) 09:56 - (TDD) Test-Driven Development Cont’d 15:36 - Immutability (Immutable Objects) Command-Query Separation Changing Objects Freezing Objects adamantium Zippers Persistent Data Structures hamster 28:49 - No Rules, Just Guidelines Law of Demeter Writing Better Tests Fizz Buzz Test Jeff Atwood: Why Can't Programmers.. Program? FizzBuzzEnterpriseEdition David’s Collection of Batpoop Crazy Fizzbuzz Solutions (Including the rand() one) Data, Context, Interaction (DCI) 38:39 - Class Interfaces: “Class interfaces are a smell” Using Classes SOLID Principle 49:30 - “Convenience has a big price” Convenience vs Explicitness 55:06 - Mutation Testing 01:00:51 - “Ideas behind ORM are a fallacy” ORM (Object-Relational Mapping) Ruby Object Mapper (ROM) 01:10:42 - Piotr Solnica: Introducing Transproc - Functional Data Transformations for Ruby transproc Picks SweetWater Road Trip (Avdi) BOSTITCH: Black Magnetic Push Style Staple Remover (Avdi) Planet Mercenary Schlock Mercenary RPG (David) Anker® 2.4G Wireless Vertical Ergonomic Optical Mouse (David) Anker® Ergonomic Optical USB Wired Vertical Mouse (David) asciinema (Piotr)     

Devchat.tv Master Feed
205 RR Eight Years of Ruby and Rails with Piotr Solnica

Devchat.tv Master Feed

Play Episode Listen Later Apr 29, 2015 82:28


02:25 - Piotr Solnica Introduction Twitter GitHub Blog Ruby Object Mapper (ROM)     virtus 03:04 - Piotr Solnica: 8 Things I Learned During 8 Years of Ruby and Rails 03:45 - Test-Driven Development 06:17 - Building a Stack Roda [YouTube] Jeremy Evans: Better Routing Through Trees (MountainWest RubyConf 2015) 09:56 - (TDD) Test-Driven Development Cont’d 15:36 - Immutability (Immutable Objects) Command-Query Separation Changing Objects Freezing Objects adamantium Zippers Persistent Data Structures hamster 28:49 - No Rules, Just Guidelines Law of Demeter Writing Better Tests Fizz Buzz Test Jeff Atwood: Why Can't Programmers.. Program? FizzBuzzEnterpriseEdition David’s Collection of Batpoop Crazy Fizzbuzz Solutions (Including the rand() one) Data, Context, Interaction (DCI) 38:39 - Class Interfaces: “Class interfaces are a smell” Using Classes SOLID Principle 49:30 - “Convenience has a big price” Convenience vs Explicitness 55:06 - Mutation Testing 01:00:51 - “Ideas behind ORM are a fallacy” ORM (Object-Relational Mapping) Ruby Object Mapper (ROM) 01:10:42 - Piotr Solnica: Introducing Transproc - Functional Data Transformations for Ruby transproc Picks SweetWater Road Trip (Avdi) BOSTITCH: Black Magnetic Push Style Staple Remover (Avdi) Planet Mercenary Schlock Mercenary RPG (David) Anker® 2.4G Wireless Vertical Ergonomic Optical Mouse (David) Anker® Ergonomic Optical USB Wired Vertical Mouse (David) asciinema (Piotr)     

All Ruby Podcasts by Devchat.tv
205 RR Eight Years of Ruby and Rails with Piotr Solnica

All Ruby Podcasts by Devchat.tv

Play Episode Listen Later Apr 29, 2015 82:28


02:25 - Piotr Solnica Introduction Twitter GitHub Blog Ruby Object Mapper (ROM)     virtus 03:04 - Piotr Solnica: 8 Things I Learned During 8 Years of Ruby and Rails 03:45 - Test-Driven Development 06:17 - Building a Stack Roda [YouTube] Jeremy Evans: Better Routing Through Trees (MountainWest RubyConf 2015) 09:56 - (TDD) Test-Driven Development Cont’d 15:36 - Immutability (Immutable Objects) Command-Query Separation Changing Objects Freezing Objects adamantium Zippers Persistent Data Structures hamster 28:49 - No Rules, Just Guidelines Law of Demeter Writing Better Tests Fizz Buzz Test Jeff Atwood: Why Can't Programmers.. Program? FizzBuzzEnterpriseEdition David’s Collection of Batpoop Crazy Fizzbuzz Solutions (Including the rand() one) Data, Context, Interaction (DCI) 38:39 - Class Interfaces: “Class interfaces are a smell” Using Classes SOLID Principle 49:30 - “Convenience has a big price” Convenience vs Explicitness 55:06 - Mutation Testing 01:00:51 - “Ideas behind ORM are a fallacy” ORM (Object-Relational Mapping) Ruby Object Mapper (ROM) 01:10:42 - Piotr Solnica: Introducing Transproc - Functional Data Transformations for Ruby transproc Picks SweetWater Road Trip (Avdi) BOSTITCH: Black Magnetic Push Style Staple Remover (Avdi) Planet Mercenary Schlock Mercenary RPG (David) Anker® 2.4G Wireless Vertical Ergonomic Optical Mouse (David) Anker® Ergonomic Optical USB Wired Vertical Mouse (David) asciinema (Piotr)     

The iPhreaks Show
095 iPS TDD (Test-Driven Development)

The iPhreaks Show

Play Episode Listen Later Mar 5, 2015 60:24


Check out RailsClips on Kickstarter!!   01:56 - Testing and Test-Driven Development (TDD) The iPhreaks Show Episode #92: Unit Testing with NatashaTheRobot 03:23 - Panel Experiences with TDD Unit Testing The Difference Between Faking, Mocking, and Stubbing 08:10 - Value Objects 09:08 - How To Do TDD “Red, Green, Refactor” BDD (Behavior-Driven Development) The Cucumber Book: Behaviour-Driven Development for Testers and Developers  by Matt Wynne and Aslak Hellesøy The RSpec Book: Behaviour-Driven Development with RSpec, Cucumber, and Friends  by David Chelimsky, Dave Astels, Zach Dennis, Aslak Hellesøy, Bryan Helmkamp, Dan North 11:28 - Jaim’s TDD Process 13:44 - Value and Getting Started with Testing Ruby Rogues Episode #178: Refactoring Ruby with Martin Fowler 21:58 - Writing Tests First “If Code is Easy to Test, It’s Easy to Change.” 27:18 - Testing on a Team Automation guard (Ruby) clang Continuous Integration (CI) 32:47 - Higher Level Testing 36:54 - KIF 38:00 - Other Ways of Testing UIs 39:44 - Who Writes the Tests? 44:06 - Test Data and Environments Test Time => Feedback 46:50 - Lower-level to Higher-level Tests Transition Value ROI (Return on Investment) 51:51 - Recording User Interactions Picks John Reid: UIViewController TDD [Screencast] (Jaim) Test-Driven iOS Development (Developer's Library) by Graham Lee (Jaim) WatchKit FAQ (Alondo) This Idea Must Die: Scientific Theories That Are Blocking Progress (Edge Question Series) by John Brockman (Alondo) Martin Fowler: The Test Pyramid (Pete) Working Effectively with Unit Tests by Jay Fields (Pete) Avery Brewing IPA (Pete) A Wizard of Earthsea by Ursula K. Le Guin (Chuck) 80/20 Sales and Marketing: The Definitive Guide to Working Less and Making More by Perry Marshall (Chuck) Miracles and Massacres: True and Untold Stories of the Making of America by Glenn Beck (Chuck)

Devchat.tv Master Feed
095 iPS TDD (Test-Driven Development)

Devchat.tv Master Feed

Play Episode Listen Later Mar 5, 2015 60:24


Check out RailsClips on Kickstarter!!   01:56 - Testing and Test-Driven Development (TDD) The iPhreaks Show Episode #92: Unit Testing with NatashaTheRobot 03:23 - Panel Experiences with TDD Unit Testing The Difference Between Faking, Mocking, and Stubbing 08:10 - Value Objects 09:08 - How To Do TDD “Red, Green, Refactor” BDD (Behavior-Driven Development) The Cucumber Book: Behaviour-Driven Development for Testers and Developers  by Matt Wynne and Aslak Hellesøy The RSpec Book: Behaviour-Driven Development with RSpec, Cucumber, and Friends  by David Chelimsky, Dave Astels, Zach Dennis, Aslak Hellesøy, Bryan Helmkamp, Dan North 11:28 - Jaim’s TDD Process 13:44 - Value and Getting Started with Testing Ruby Rogues Episode #178: Refactoring Ruby with Martin Fowler 21:58 - Writing Tests First “If Code is Easy to Test, It’s Easy to Change.” 27:18 - Testing on a Team Automation guard (Ruby) clang Continuous Integration (CI) 32:47 - Higher Level Testing 36:54 - KIF 38:00 - Other Ways of Testing UIs 39:44 - Who Writes the Tests? 44:06 - Test Data and Environments Test Time => Feedback 46:50 - Lower-level to Higher-level Tests Transition Value ROI (Return on Investment) 51:51 - Recording User Interactions Picks John Reid: UIViewController TDD [Screencast] (Jaim) Test-Driven iOS Development (Developer's Library) by Graham Lee (Jaim) WatchKit FAQ (Alondo) This Idea Must Die: Scientific Theories That Are Blocking Progress (Edge Question Series) by John Brockman (Alondo) Martin Fowler: The Test Pyramid (Pete) Working Effectively with Unit Tests by Jay Fields (Pete) Avery Brewing IPA (Pete) A Wizard of Earthsea by Ursula K. Le Guin (Chuck) 80/20 Sales and Marketing: The Definitive Guide to Working Less and Making More by Perry Marshall (Chuck) Miracles and Massacres: True and Untold Stories of the Making of America by Glenn Beck (Chuck)

Nerds2Nerds
Епизод 39 – част 2 – Test Driven Development

Nerds2Nerds

Play Episode Listen Later Jul 27, 2014


Разговор със Стефан Кънев за TDD (Test Driven Development). Дали TDD е мъртво, или непрактично? Кога и как трябва да се използва, какви са затрудненията, какво трябва да се има предвид и много други полезни неща и съвети. Директен линк към част 2 (mp3) (ogg) Материали по темата: Презентацията на DHH: https://www.youtube.com/watch?v=9LfmrkyP81M Блог постовете по […]

tdd dhh test driven development tdd test driven development
Fréquence Valtech
Fréquence Valtech - épisode 1 : TDD

Fréquence Valtech

Play Episode Listen Later Dec 13, 2011 55:46


Cet épisode traite de TDD (Test Driven Development), notamment en terme de retour d'expérience et de mise en oeuvre.

java tdd .net valtech junit tdd test driven development