POPULARITY
English Edition: In this last episode for the ByteSized RSE "miniseries" we talk about AI assisted coding - and the (long) history how engineers tried to come up with assisting tools to make our code better and more robust. My guest is Liam Gao from Imperial College, London, UK. Links:https://github.com/features/copilot GitHub Co-Pilothttps://huggingface.co HuggingFace another AI toolhttps://spacelift.io/blog/ai-coding-assistant-tools a summary of current tools (non exhaustive)https://platform.openai.com/docs/guides/prompt-engineering OpenAI's take on prompt engineeringhttps://www.promptingguide.aihttps://web.archive.org/web/20121022091418/http://www.stanford.edu/~learnest/spelling.pdf some of the attempts to come up with spelling checkshttps://en.wikipedia.org/wiki/Code_completionhttps://www.gnu.org/software/emacs/ Good old Emacshttps://en.wikipedia.org/wiki/Vi_(text_editor) vi editor (not for the faint hearted)https://winworldpc.com/product/turbo-pascal/7x Borland's Turbo Pascal with IDEhttps://survey.stackoverflow.co/2024/ Stackoverflow survey from 2024 with ca 65000 respondents And here the YouTube clips mentionedhttps://www.youtube.com/watch?v=MvEXkd3O2ow Cypher musing why he didn't take the "blue pill"https://www.youtube.com/watch?v=L0mRMp2kbQY Star Trek TNG, S3E6 - Geordie LaForge talking to the computerGet in touchThank you for listening! Merci de votre écoute! Vielen Dank für´s Zuhören! Contact Details/ Coordonnées / Kontakt: Email mailto:peter@code4thought.org UK RSE Slack (ukrse.slack.com): @code4thought or @piddie US RSE Slack (usrse.slack.com): @Peter Schmidt Mastodon: https://fosstodon.org/@code4thought or @code4thought@fosstodon.org Bluesky: https://bsky.app/profile/code4thought.bsky.social LinkedIn: https://www.linkedin.com/in/pweschmidt/ (personal Profile)LinkedIn: https://www.linkedin.com/company/codeforthought/ (Code for Thought Profile) This podcast is licensed under the Creative Commons Licence: https://creativecommons.org/licenses/by-sa/4.0/
An airhacks.fm conversation with Volker Simonis (@volker_simonis) about: early computing experiences with Schneider CPC (Amstrad in UK) with Z80 CPU, CP/M operating system as an add-on that provided a real file system, programming in Basic and Turbo Pascal on early computers, discussion about gaming versus programming interests, using a 9-pin needle printer for school work, programming on pocket computers with BASIC in school, memories of Digital Research's CP/M and DR-DOS competing with MS-DOS, HiMEM memory management in early operating systems, programming in Logo language with turtle graphics and fractals, fascination with Lindenmayer systems (L-systems) for simulating biological growth patterns, interest in biology and carnivorous plants, transition to PCs with floppy disk drives, using SGI Iris workstations at university with IRIX operating system, early experiences with Linux installed from floppy disks, challenges of configuring X Window System, programming graphics on interlaced monitors, early work with HP using Tickle/Tk and python around 1993, first experiences with Java around version 0.8/0.9, attraction to Java's platform-independent networking and graphics capabilities, using Blackdown Java for Linux created by Johan Vos, freelance work creating Java applets for accessing databases of technical standards, PhD work creating software for analyzing parallel text corpora in multiple languages, developing internationalization and XML capabilities in Java Swing applications, career at Sun Microsystems porting MaxDB to Solaris, transition to SAP to work on JVM development, Adabas and MaxDB, reflections on ABAP programming language at SAP and its database-centric nature Volker Simonis on twitter: @volker_simonis
Im vergangenen Oktober habe ich in den Berliner Sophiensälen die Performance «Faith Fiction» des Kollektivs Turbopascal miterlebt. Das war ein einmaliges Erlebnis, das mich immer noch beschäftigt. Den Glauben mitten im vermeintlich säkularen Berlin, in einer interaktiven Theaterperformance zum Thema machen – wie das gelingen kann und was dabei herauskommt, darüber spreche ich mit Angela Löhr und Frank Oberhäußer, der künstlerischen Leitung. Am Anfang der Produktion von «Faith Fiction» stand ein Text, den der Theaterkritiker und Journalist Dirk Pilz 2017 auf der Website «nachtkritik» veröffentlicht hatte. Ihn habe ich sehr geschätzt. Pilz war ein überaus kundiger Theaterfachmann und auf seine Weise ein sehr inspirierender Theologe. 2018 ist er viel zu früh verstorben. Deshalb hier einige Sätze aus einem Text, in dem er sich Gedanken über Religion und Theater gemacht hat – Gedanken, die Turbo Pascal bei der Vorbereitung ihrer Performance inspiriert haben: «Es ist ja nicht so, dass es einen Mangel an Religion auf deutschsprachigen Bühnen gäbe. Religion gehört schließlich nicht erst in der Gegenwart zu den umstrittensten und heikelsten Themen überhaupt. Aber Gläubige treten im deutschsprachigen Theater fast nur als Zerrbild auf, als Mängelwesen und bedauernswerte Tropfe, die den Anschluss an die Welt der Aufklärung und Vernunft verpasst zu haben scheinen… Religion wird durchweg zum diffusen Sammelbegriff für alles, was als irgend fremd, irrational oder überholt gilt, mitunter auch schlicht als Kennzeichen von Konservatismus. Sie wird so als das vorgeführt, was moderne, aufgeklärte Menschen nicht hätten – und auch nicht bräuchten.» Dass es genauso nicht ist, haben die Schauspielerinnen und Schauspieler von Turbo Pascal in ihren Vorarbeiten – langen Rechercheinterviews – und in ihrer Performance herausgefunden: Glaubensfragen bewegen immer noch, nur sind die Antworten inzwischen vielfältiger und vielschichtiger geworden. Wenn man sich über sie austauscht und das gängige Beschweigen von Religion überwindet, dann kann man sich und seine Mitmenschen besser kennenlernen.
Den Namen .NET haben sicherlich viele von euch schon einmal gehört. Viele Windows-Updates bringen regelmäßig Neuerungen zur wichtigen Runtime der Plattform. Aber was genau verbirgt sich dahinter und warum ist diese Technologie auch außerhalb des Windows-Ökosystems relevant? Aber zuallererst klären wir auf, was sich hinter dem Begriff .NET alles verbirgt – denn das ist eine ganze Menge.Gemeinsam mit Dennis Oehme und Martin Deiss von Garden of Concepts sprechen wir über die Entwicklung, die .NET und C# in den letzten Jahrzehnten durchlaufen haben. Die beiden berichten Jan im Podcast-Studio, wie sie modernes .NET Core nutzen, um ihre Projekte und Web-Services nicht nur auf Webservern, sondern auch auf Embedded Devices zu bringen.Außerdem besprechen die drei die Nähe und Gemeinsamkeiten von .NET, C#, TypeScript und anderen Sprachen und Frameworks. Immerhin stammen beide aus der Feder von Anders Hejlsberg, einem der maßgeblich verantwortlichen Entwickler für Turbo Pascal und Delphi bei Microsoft.Und natürlich interessiert uns nicht nur das Framework und die Syntax der Sprache, sondern auch die Community und wie neue Entwickler:innen am besten den Einstieg in die sehr vielfältig nutzbare Welt von .NET und C# schaffen.Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback: podcast@programmier.barFolgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und virtuelle Meetups und beteiligt euch an Community-Diskussionen. BlueskyInstagramLinkedInMeetupYouTubeMusik: Hanimo
Jeff was born and raised in The Netherlands and is an IT geek with a passion for automation. At the young age of 6, he had his very first computer and started developing his own Pacman to learn Batch programming. Looking back, the performance was terrible, but it worked. Over the years, he has always kept in touch with some sort of scripting or programming languages, such as Batch, (Turbo) Pascal, PHP, Delphi, Kixtart, Visual Basic Scripting (VBS), VB .NET, PowerShell, and C# .NET (Core). He is the owner of Methos, a consultancy and managed services company from The Netherlands focused on Microsoft Modern Workplace (Windows + Intune + Office365) and Azure through automation and Infrastructure-as-Code. Topics of Discussion: [4:19] Jeff's passion and the three turning points in his career. [8:47] The architecture and intention behind PowerShell being built on .NET. [12:33] What are the biggest mistakes Jeff sees people making when it comes to PowerShell? [11:50] Best practices for using PowerShell in DevOps environments, and common mistakes to avoid. [16:04] Differences between binary and PowerShell-based modules, and the benefits of exploring module code. [18:18] Leveraging .NET code in PowerShell scripts and the advantages of this approach. [20:00] Preferred methods for writing automated tests for PowerShell code. [23:39] Jeff's current focus areas, including certifications and his upcoming “script portal” project. Mentioned in this Episode: Clear Measure Way Architect Forum Software Engineer Forum Programming with Palermo — New Video Podcast! Email us at programming@palermo.net. Clear Measure, Inc. (Sponsor) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right Way, by Jeffrey Palermo — Available on Amazon! Jeffrey Palermo's Twitter — Follow to stay informed about future events! Jeff on Twitter Jeff on LinkedIn Jeff Wouters Methos jeff@methos.nl Want to Learn More? Visit AzureDevOps.Show for show notes and additional episodes.
Carmen gehört zu den Mobile App-Entwicklerinnen der ersten Stunde, die mit Symbian begann und anschließend Apps für iOS entwickelte. Ihren beruflichen Weg in die IT fand sie durch ihre Begeisterung für Computerspiele und das Programmieren mit Turbo Pascal im Informatikunterricht, was schließlich zu einem Informatikstudium führte. Heute ist sie als Senior Consultant bei INNOQ tätig, wo sie vor allem im Bereich der Frontend-Entwicklung arbeitet. In dieser Folge der Podcast-Reihe Women in Tech spricht Carmen mit Stefanie über ihren Berufseinstieg, entscheidende Lernmomente und die Bedeutung von Flexibilität und Anpassungsfähigkeit in einer schnelllebigen Branche.
Und noch eins, und noch eins, und … Dieses Stück hält was es verspricht: Hörspiele im Minutentakt. Auf ein gereimtes Dramolett folgt eine Slapstick-Nummer, auf die Publikumsbefragung eine irre Zahnärztin, auf die Ode eine Collage. Von Brigitte Abraham & Ruth Johanna Benrath, Christian Berner, Anna-Luise Böhm, Susanne Franzmeyer, Erwin Grosche, Astrid Litfaß, Marie T. Martin, Katharina Schlender, Frank Schültge, Robert Schurz, Wolfgang Seesko, Jan Theiler, Turbo Pascal und Frank Zauleck www.deutschlandfunkkultur.de, Hörspiel
I do what I do because of one company … IBM. Why? Because in the 1970s, I got into computers, with a ZX81 (1KB of RAM) and a Dragon 32 (32 KB of RAM). They were very much home computers, and where you would rush out and buy the latest computer magazine, and then spend a happy evening entering some BASIC code that made a cursor move across the screen using the IJLM keys. If you were very lucky you would manage to save it to a cassette — that could take over ten minutes to save a simple program — only to get an error at the end. I was hooked! But, at work, we had a DEC VAX minicomputer, and which cost a fortune to buy and maintain (even in those days). This mini ran typically Pascal, and I remember running labs for students, and where they all decided to compile their program at the same time, and 30 minutes later, some of them would get their errors, and have to compile it again. Basically, every lab ended with me saying, “Sorry about that.” The VAX, though, was not designed to support 25 students compiling their program at the same time … it was a batch processing machine and wanted to be given jobs that it could run whenever it had time. It basically came from the days when you handed in your punch cards (containing either FORTRAN if you were an engineer or COBOL if you were more business-focused) to someone with a white coat, and then came back the next week with a printed output with green lined paper. But, just in time, the IBM PC arrived, and it was heavy but beautiful. So, as many in my department pushed for the VAX, but pushed for the PC for our labs. With their clock speed of 4.7 MHz, and 640KB of memory, I went ahead and bought a batch for a new PC lab. In those days there were no network switches, so they all connected with coaxial cable and had T-pieces to connect to the shared Ethernet bus. My logic was that we were paying around £20K for maintenance on the VAX, and where we could buy 20 £1K PC clones for the same cost. But, we'd have to maintain them. And, it worked. It freed us, and allowed us to run the classic Turbo Pascal (and Turbo C): Our student could now bring in their 5-inch floppy disks and save their programs for later use. And the size of the hard disk? 20MB! And, so, it is to IBM that we turn in starting the PC revolution, and today is the 100th anniversary of the IBM name — and first defined on 15 Feb 1924.
An airhacks.fm conversation with Geert Bevin (@gbevin) about: early days learning to code on a Commodore 64 and writing a painting program, learning Basic, Turbo Pascal, then C++, building custom software for companies in Belgium using Java and owned the IP, Seaside web framework was written in Smalltalk, Rife web framework, Cameron Purdy on "#16 Java, Caching and How the Information Flows", Cedric Beust on "#134 How EJBGen, TestNG and ...Android happened", the lightweight Spark (web framework), Gradle and Apache Maven, Project Loom and Continuations, BLD build tool, Object-oriented programming, Smalltalk, Seaside (software), ASM (Java bytecode manipulation and analysis framework), Rife and continuations, Rife is based on Servlets, Velocity (software), Spark (web framework), jetty (web server),Apache Tomcat, WAR (Sun file format), JSP, Kotlin, Tangosol, TestNG Geert Bevin on twitter: @gbevin
An airhacks.fm conversation with Anton Arhipov (@antonarhipov) about: playing sports games on Pentium 233 MHz the 2014 JavaOne Rockstar awards about NetBeans, Eclipse, and IntelliJ., enjoying sports games and destroying joysticks, practicing competitive swimming, swim training, starting to program in Turbo Pascal at Maelardalen University, ship simulation with Java for Vasa Museum, joining a company which maintains RefactorIT, working with Java EE and WebLogic and JRockit, joining ZeroturnAround and working on JRebel, Rebel and LiveRebel, working on a profiler, JetBrain's MPS, DevRel for TeamCity, AppCode features are appearing in fleet, Fleet is built on common UI principles, the rendering engine Skia, Kotlin and Jetpack Compose, Circles by Anton Anton Arhipov on twitter: @antonarhipov
Episode 426 avec Xavier et David.La revue de presse :• A comme AMD (00:03:51) : Le MI300A d'AMD : APU le plus puissant? AMD sort sont nouveau APU Instinct MI300A, qui prétend rivaliser avec les meilleurs solutions NVIDIA. (Sources : techradar.com et forbes.com) • I comme Impression 3D (00:09:04) : Des photos en 3D grâce à l'impression 3D ? C'est possible ! Un maker imprime en 3D un accessoire qui permet de réaliser un stéréogramme à partir de photos macro. (Sources : 3dnatives.com, printables.com et youtube.com) • M comme Mistral (00:16:19) : Un modèle IA rivalisant avec ChatGPT 3.5 donné au publique. Mistral IA a distribué discrètement son modèle LLM rivalisant avec GPT 3.5. (Sources : gizmodo.com, mistral.ai et ycombinator.com) • R comme Réseau social (00:26:08) : Threads arrive en Europe. Le réseau social Threads arrive en Europe ce Jeudi. (Sources : bfmtv.com, lepoint.fr et tomsguide.fr) • T comme Téléscope (00:36:04) : Un téléscope intelligent. L'incroyable téléscope Seestar S50. (Sources : fstoppers.com et seestar.com) • T comme Turbo-Pascal (00:42:22) : Un language de programmation fête ses 40 ans. Le Turbo-Pascal a 40 ans. (Sources : techspot.com, metatrone.fr et developpez.net) Dossier : Stockage: du byte à l'exabyte (00:51:09)• Historique, évolution des moyens de stockage (Sources : nectardunet.com et utmel.com)• Cartes perforées / disquettes (Sources : wikipedia.org, wikipedia.org et zdnet.fr)• Disques durs / Disques optiques (Sources : wikipedia.org et wikipedia.org)• Memoires flash / SSD (Sources : wikipedia.org et wikipedia.org)• Longévité du stockage (Source : arcserve.com)• Le stockage sur verre de microsoft (Source : usglassmag.com) Retrouvez toutes nos informations, liens, versions du podcast via notre site : LesTechnos.be
Episode 426 avec Xavier et David.La revue de presse :• A comme AMD (00:03:51) : Le MI300A d'AMD : APU le plus puissant? AMD sort sont nouveau APU Instinct MI300A, qui prétend rivaliser avec les meilleurs solutions NVIDIA. (Sources : techradar.com et forbes.com) • I comme Impression 3D (00:09:04) : Des photos en 3D grâce à l'impression 3D ? C'est possible ! Un maker imprime en 3D un accessoire qui permet de réaliser un stéréogramme à partir de photos macro. (Sources : 3dnatives.com, printables.com et youtube.com) • M comme Mistral (00:16:19) : Un modèle IA rivalisant avec ChatGPT 3.5 donné au publique. Mistral IA a distribué discrètement son modèle LLM rivalisant avec GPT 3.5. (Sources : gizmodo.com, mistral.ai et ycombinator.com) • R comme Réseau social (00:26:08) : Threads arrive en Europe. Le réseau social Threads arrive en Europe ce Jeudi. (Sources : bfmtv.com, lepoint.fr et tomsguide.fr) • T comme Téléscope (00:36:04) : Un téléscope intelligent. L'incroyable téléscope Seestar S50. (Sources : fstoppers.com et seestar.com) • T comme Turbo-Pascal (00:42:22) : Un language de programmation fête ses 40 ans. Le Turbo-Pascal a 40 ans. (Sources : techspot.com, metatrone.fr et developpez.net) Dossier : Stockage: du byte à l'exabyte (00:51:09)• Historique, évolution des moyens de stockage (Sources : nectardunet.com et utmel.com)• Cartes perforées / disquettes (Sources : wikipedia.org, wikipedia.org et zdnet.fr)• Disques durs / Disques optiques (Sources : wikipedia.org et wikipedia.org)• Memoires flash / SSD (Sources : wikipedia.org et wikipedia.org)• Longévité du stockage (Source : arcserve.com)• Le stockage sur verre de microsoft (Source : usglassmag.com) Retrouvez toutes nos informations, liens, versions du podcast via notre site : LesTechnos.be
RobChrisRob talked about plans for Humanity's first permanent lunar base which definitely is gonna happen, Rob Reiner announcing that Spinal Tap is gonna be shooting a sequal in 2024, Vanity Fair had first look photos at the Fallout TV series from the Westworld team, there's a trailer for the next & final season of Letterkenny, the fate of the Collings Foundations WWII aircraft, Turbo Pascal's 40th birthday, the first trailer for the Furiosa Prequel, and a bit of chat about the Monarch TV Show. Join our discord to talk along or the Subreddit where you will find all the links https://discord.gg/YZMTgpyhB https://www.reddit.com/r/TacoZone/
An airhacks.fm conversation with Axel Fontaine (@axelfontaine) about: starting with 8086 and 640 kB, starting with GW Basic, enjoying Alley Cat and Monkey Island on Sega Master, switching to QBasic, protecting the lemmings, the cyber cafe Cyberia in London, learning Turbo Pascal, impressed by Java Applets, starting in 1998 at IBM Global Services, using Visual Age for Java, travelling the world, the envy version control for Visual Age for java, attending JavaPolis, qcon, first talk at JUG Augsburg about Continuous Delivery, the Continous Delivery Book, Ruby DSL migrations, “data will outlive the code”, database outlives the code, the travel report website, Flyway - the migration path for birds, using JDBC metadata for schema migrations, promoting FlywayDB, paid features and support contracts, running migrations on application startup, the Java EE simplicity Axel Fontaine on twitter: @axelfontaine
An airhacks.fm conversation with Juan Fumero (@snatverk) about: 8088 an IBM clone, joining a cross country running team at school, Zoran previously at "#169 Deep Learning with Modern Java Code", leaning Turbo Pascal, C and C++, working on particle detection at CERN , working on GraalVM to GPU compilation and optimization, using direct memory access to communicate with the GPU, vector types in Java, Apache Flink acceleration on FPGA and GPUs, working on FPGAs, using RTL for FPGA programming, transparent acceleration for Java, astrophysics analytics with Java, DeepNetts on tornadovm, the relation between TornadoVM and GraalVM, using Panama to access native memory GPU-less TornadoVM, contributing to TornadoVM Juan Fumero on twitter: @snatverk
Marcus, Dorotheawww.deutschlandfunkkultur.de, Rang 1Direkter Link zur Audiodatei
An airhacks.fm conversation with Ceki Guelcue (@ceki) about: cava the Turkish Java, PC XT 8080, 360 kB floppy disk, using Turbo Pascal, developing a board game in Turbo Pascal, learning MS-DOS, studying physics, using Smaky, EPFL Logitech is based in Lausanne, programming over physics, CDMA algorithm, OSI model, ping pong the simplest possible transport protocol, ping pong protocol is also known as Time-division multiplexing, TCP is a very simple protocol, easy of implementation is an interesting property, SLF4j a simple logging framework, learning C and struggling with pointers, the division algorithm is magical, Mix Network, developing mix-based email system, the beginnings of tor, the tor project, enjoying operator overloading in C++, DSLs might be a waste of time, the LogBack DS, Log4j vs. java.util.logging, anonymity and freedom, using traffic analysis to analyse tor, onion routing and tor, tor's honeypots, Ceki's paper: Mixing Email with Babel, Ceki's company: qos.ch Ceki Guelcue on twitter: @ceki
An airhacks.fm conversation with Richard Fichtner (@richardfichtner) about: the jcon.one conference, the cinedom and thunderdome, Digital Crafts Day, 80485 Intel with ISDN router, starting with Turbo Pascal, the ISDN extension card, prehistoric and Prince of Persia, Wing Commander, starting with SUSE Linux, ISDN router and asterisks, lilo the Linux loader, geocities and myspace, Internet Cafes and resetting the computers, Netscape Composer and Netscape Navigator, Netscape Mail, teaching HTML at school, xpage is a WYSIWYG, Florian Habermann the god of programming, xdev the low code / nocode environment, xdev is Java 21 compatible, xapi the framework, moving from Swing to Vaadin, the extended persistence context and EntityManager, PersistenceContextType.EXTENDED and interactive applications, Vaadin flow and WebComponents, GWT and Vaadin, xdev the Vaadin IDE, xdev a no-code IDE, SqlEngine a custom DSL for SQL with xdev, RapidClipse and Eclipse, Eclipse performance significantly improved in recent releases Richard Fichtner on twitter: @richardfichtner
An airhacks.fm conversation with Shai Almog (@debugagent) about: Sinclair spectrum and VIC 20, moving to Apple 2, programming the first game, learning assembly and Turbo Pascal, first programming job with 17, using OS/2 for fun, working for Paradox, enjoying BeOS, apple wanted to buy BeOS before it bought NeXT, working for AI company, working on heuristic scheduling, writing articles for IDM about Java 1.1, the attraction to CORBA, OS2 and DSOM, MarshalledObject in Java, the great SGI machines, pretending to be a fighter pilot, developing in a burning building, USAF Video Game, starting a Java consulting company in 1999, building a Palm Pilot application for waiters, Sun's Spotless VM comes with support for Solaris and Windows, porting Spotless VM to Linux, working for Sun Israel Development Center Shai Almog on twitter: @debugagent
We're back to three and all is well! Unless you count the facts that Martin is not wearing a shirt and Andrew sings quite a lot. New One Prime Plus members, New Zealand, New Corner, and Old computers! PSA: Review early and review often. ⭐⭐⭐⭐⭐ Follow-up: Hard-out! 00:00:00 Hard Out (https://www.yourdictionary.com/hard-out) ⏰ 30 degrees Celsius = 86 Degrees Fahrenheit
In this episode, we talk to Anders Hejlsberg, the creator of programming languages such. as C#, Typescript, Turbo Pascal and Delphi, on a life spent on building programming languages, the history of Java, his systems and setup, and what the future of programing languages looks like. Anders is someone we have looked up to for a big part of our lives, and this episode was a treat for us!See omnystudio.com/listener for privacy information.
Array Cast - November 11, 2022 Show NotesThanks to Bob Therriault and Adám Brudzewsky for gathering these links:[01] 00:04:10 SJT AT 5JT DOT COM[02] 00:04:30 APLNAATOT Podcast https://www.youtube.com/watch?v=R_dpMVyyCEo&list=PLYKQVqyrAEj8Q7BdOgakZCAGf6ReO1cue https://abrudz.github.io/aplnaatot/ Dyalog User meeting videos https://dyalog.tv/Dyalog22/[03] 00:08:40 q personal licence https://kx.com/kdb-personal-edition-download/[04] 00:09:20 Stop Writing Dead Programs StrangeLoop 2022 https://www.youtube.com/watch?v=8Ab3ArE8W3s[05] 00:11:22 Deck of Cards video https://www.youtube.com/watch?v=eXGKK8BkCkg[06] 00:11:44 Tangentstorm home page http://www.tangentstorm.com/ Youtube https://www.youtube.com/user/tangentstorm/videos Twitch https://www.twitch.tv/tangentstorm Twitter https://twitter.com/tangentstorm GitHub https://github.com/tangentstorm/[07] 00:13:09 Tandy 1000 https://en.wikipedia.org/wiki/Tandy_1000 GW Basic https://en.wikipedia.org/wiki/GW-BASIC[08] 00:14:09 Turbo Pascal https://en.wikipedia.org/wiki/Turbo_Pascal[09] 00:15:30 Fred and Wanda website http://tempytantrum.com[10] 00:16:50 AmeriCorps https://americorps.gov/[11] 00:21:30 Haskell https://www.haskell.org/ Smalltalk https://en.wikipedia.org/wiki/Smalltalk Python https://www.python.org/[12] 00:22:50 J software https://www.jsoftware.com/#/[13] 00:24:15 J for C programmers https://code.jsoftware.com/wiki/Books#J_for_C_Programmers Ulam's Spiral video https://youtu.be/dBC5vnwf6Zw[14] 00:25:18 Eric Iverson Episode https://www.arraycast.com/episodes/episode10-eric-iverson[15] 00:25:42 1010data.com https://www.1010data.com/ Stevan Apter Episode https://www.arraycast.com/episodes/episode26-stevan-apter Joel Kaplan Episode https://www.arraycast.com/episodes/episode27-joel-kaplan[16] 00:29:05 Github Tangentlab http://tangentstorm.github.io/ Ward Cunningham https://en.wikipedia.org/wiki/Ward_Cunningham C2 wiki http://wiki.c2.com/[17] 00:30:00 Python Paradox Paul Graham http://www.paulgraham.com/pypar.html k language https://en.wikipedia.org/wiki/K_(programming_language)[18] 00:31:50 kona https://github.com/kevinlawler/kona/wiki[19] 00:34:12 ok.js https://johnearnest.github.io/ok/index.html[20] 00:35:21 Job posting https://www.linkedin.com/pulse/want-work-k-1010data-michal-wallace/?trackingId=MAtCm2uioHw0wAsNbxJ%2FNA%3D%3D[21] 00:38:34 Recursion https://en.wikipedia.org/wiki/Recursion[22] 00:54:12 Jprez presentation in J https://github.com/tangentstorm/jprez Tangentstream https://www.youtube.com/channel/UCWgUN-LjgbKkeqQ0llA51Gw[23] 00:59:45 CP3 Python https://www.youtube.com/watch?v=o4Pnn6T9d3Y[24] 01:00:30 Why Isn't Functional Programming the Norm Richard Feldman https://www.youtube.com/watch?v=QyJZzq0v7Z4
If you are a web developer, chances are that you used CodePen more than once. You're also probably very familiar with CSS-Tricks for, well, more than just CSS tricks. The man behind these experiences, Chris Coyier, actually started his journey some time ago with a programming language called Turbo Pascal - many steps removed from web development. I sat down with Chris to talk more about his career, lessons in getting CodePen out into the world, and so much more.
An airhacks.fm conversation with Daniel Lipp (@dynamic_123) about: starting to program CPC Schneider in the store, Basic and Logo, the first floppy disk to save the work, writing a senso game, Mandelbrot caclulations locked the computer for days, wiring computers on vacations, finding hidden files of Werner the German rocker game, Logo looks like assembly, starting physics and learning Turbo Pascal, from Basic to Visual Age SmallTalk, math formulas as code, memory leaks in C++, SmallTalk solved memory leaks, SmallTalk over Java, migrating from SmallTalk to Java, the elegance of SmallTalk, overriding a non-existing method in SmallTalk, Visual Age for SmallTalk over Visual Age for Java, the non-extendible Java currency class, recompiling the java.util.Currency class, writing a Java persistence layer, modernising with Java EE 5, writing Eclipse RAP clients, it is hard to maintain the spirit in fast growing companies, starting at open source CMS startup, migrating to openshift and containers, migrating microservices from JBoss to Quarkus, saving memory and CPU with Quarkus, saving money with quarkus, migrating from Java EE to Quarkus with minor code adjustments, the same old, serverless, architecture, Daniel Lipp on twitter: @dynamic_123 and Instagram: dynamic_dli
MS-DOS CLUB – Vol 27 - Aventuras conversacionales a fondo con Carlos Sánchez, Uto. Si te gusta nuestro contenido recuerda apoyarnos con una recomendación o echando una mano con los gastos del server ;) En el MS-DOS CLUB de este mes vamos a hablar a fondo de Aventuras conversacionales con Carlos Sánchez, alias Uto. Uto nos explicará cómo se lio a hacer ficción interactiva con su Spectrum y cómo aprendió a programar en BASIC y Turbo Pascal, llegando a crear sus propios parsers. Entre los parsers que ha creado tenemos, NMP, Superglus o ngPAWS, además de haber colaborado en la creación de otros como Visual Sintac o el recuperado parser de Aventuras AD. Así aprenderemos un poco de la historia de las aventuras conversacionales desde que dejaron de ser comerciales, a principios de los 90, hasta día de hoy. Después haremos una pausita para la publicidad, recordando cómo era la televisión noventera. Tendremos las efemérides de julio de 1994 en las que Logaran nos pondrá al día de lo que se cocía hace 28 años. Hablaremos del virus Koko, un virus que se activaba en Julio para hacer de las suyas en tu ordenador y por último, en el Readme.txt responderemos a vuestros comentarios de esta web y de Ivoox, por cierto, recordad que normalmente grabamos esta parte en vivo en nuestro grupo de Telegram. Recuerda que no estás viejo/a, tan solo un poco obsoleto/a ¡Obsoleta et Superbus! El listado del disquete VOL 27 es: Presentación: 00:04:41 Autoexec.bat: 00:17:13 Aventuras conversacionales desde los 90 hasta hoy con Uto: 00:18:16 El juego de Logaran del mes - Scape from Pulsar: 01:37:40 Publicidad: 02:00:57 Efemérides julio de 1994: 02:13:59 El Virus - Koko: 02:32:51 Readme.txt: 02:50:15 Os agradecemos desde ya vuestros comentarios y valoraciones positivas en iTunes, iVoox y nuestra web msdos.club y las recomendaciones del programa. Ayúdanos a mantener MS-DOS Club. Agradecemos en este episodio a: Sonia Chaves (@DubbingSonia) por su voz para las cortinillas. Canal de Sonia en Ivoox: Órbita Arrakis. Web de Sonia: soniachaves.es. Antonio Lozano (TwitterLess) por su dedicación y participación. Javier Sancho (@kalzakath1) por su dedicación y participación y editar esto que ha sido un infierno. Carlos Sánchez - Uto (@uto_dev) por explicarnos mucho acerca de aventuras conversacionales. ¡A todos y todas los que nos apoyáis de maneras diferentes en este proyecto!
An airhacks.fm conversation with Karl Heinz Marbaise (@khmarbaise) about: PET 2001 was the first computer, enjoying programming at school, writing Basic and assembly code on Commodore CBM 4000, writing software for Commodore 1 PCB, finally getting a Commodore 64, programming extruder mesh machines, writing floating point libraries on Intel 8080, the connection between computers and math, starting with Turbo Pascal, C and C++ and Turbo C, studying part time, working full time, tracking cars with GPS in Delphi, implementing a new language in lex, yacc and bison, banks were using the OS/2 Warp operating system, working with Visual Basic, starting with Java 1.4 in 2004, working with PHP and MySQL, SOAP with PHP, developing an internal sourceforge, write simple code and enjoy JVM performance, starting with Ant then migrate to Maven 2, Apache Jelly the executable XML, Convention over Configuration with Maven, Apache Continuum, AnthillPro and CruiseControl, becoming a Maven committer, Apache Axis 2, using Hudson for CI/CD, contributing to open source at Deutsche Boerse, working with Robert Scholte, airhacks.fm episode with Robert: "#28 More Conventions with Maven.next", working as DevOps engineer, Karl Heinz Marbaise on twitter: @khmarbaise
Alexander og Olav sitter med gammeldagse holdninger og tenker at det er på tide å sjekke om de stemmer eller om de må oppjusteres.Roberth Strand fra Crayon kan bekrefte noe, han liker Pizza. Men han får oppjustert Alexander og Olav om hvilke "kategorier" av utviklere som er vanlig og hva de driver med.Masse gode råd om alt fra Roberth sitt favoritt programmeringsspråk til Olav sitt, som er Turbo Pascal. Alexander hamstrer inn data til biblioteket sitt, blir alle 95 MB han har oppbrukt? See acast.com/privacy for privacy and opt-out information.
Benvenuti su Fillole. Nel quarantottesimo episodio vi racconterò il pensiero di Blaise Pascal.Nel minor tempo possibile!Hot Swing di Kevin MacLeod è un brano autorizzato da Creative Commons Attribution (https://creativecommons.org/licenses/by/4.0/)Fonte: http://incompetech.com/music/royalty-free/index.html?isrc=USUAN1100202Artista: http://incompetech.com/Grafiche di Valentina Sciuttihttps://www.instagram.com/valentina.sciutti/?hl=it
Show notes Robert van Loghem programmeert sinds zijn 13e in Turbo Pascal, na meer dan tien jaar backend-ontwikkeling in Java en wat Scala te hebben gedaan, begon hij in 2010 met het ontwikkelen van Objective-C iOS-apps voor NS en een klein beetje ProRail. Nu doet hij voornamelijk Kotlin en Swift in frontend en... in backend. Jamie Craane is een Full Stack software ontwikkelaar met een passie voor Kotlin en Kotlin Multiplatform. Hij heeft o.a. aan de wieg gestaan van de NS Reisplanner Android app en de Kotlin multiplatform app van Eneco. Met hosts Kishen Simbhoedatpanday - LinkedIn Twitter Robert van Loghem LinkedIn - link Twitter - @soundbites Jamie Craane LinkedIn - link Twitter - @jcraane jamiecraane.dev Onderwerpen 00:00 Intro 04:45 Hoe is het programmeren begonnen bij jullie? 14:45 Huidig mobile development project en de team samenstelling 19:05 Hoe omgaan met multiplatform en verschillende mobile developer skillsets 26:17 Welke Mobile Software Development stack gebruiken jullie? 30:00 CI, testing en CD naar App Stores voor Mobile Development 39:45 Wijze lessen tijdens Mobile Development en de beste Mobile experience 49:40 Mobile testing in de Cloud? 51:50 Multiplatform Mobile Development met Kotlin, de voor- en nadelen 01:04:45 Trunk based development vs. Pull requests 01:11:40 Hoe loopt het proces in Multiplatform development. Maak je genoeg gebruik van de hardware mogelijkheden? 01:16:39 TempleOS? 01:18:40 iPhone of Android voor privé gebruik. En welke andere hardware gebruiken jullie? En voor gaming? 01:24:47 Wat is een full stack developer volgens jullie? 01:27:08 Welke loopbaan tips zou je je jongere zelf geven? 01:32:28 Grootste fout afgelopen jaar? 01:37:17 Belangrijkste developer skill die je zou aanraden? 01:40:18 “Bouw mee aan onze complexe Architectuur” in een complex domein 01:53:48 Tips 02:21:03 Outro Random notes Kotlin Multiplatform Pact integration/ microservices testing Flutter Cordova React native Obsidian Tips Robert Investeer in je gereedschap! Zoals goeie werkplek Disney+ de What if Serie Apple TV+ Foundation Jamie Jamie music producer Github Co-pilot Snyder's Justice League Kishen Ego is the enemy Twin Peaks CodeKlets links CodeKlets CodeKlets Nieuwsbrief CodeKlets Slack CodeKlets Twitter CodeKlets op Vriend van de Show
An airhacks.fm conversation with Dr. Zoran Sevarac (@zsevarac) about: ZX Spectrum with rubber keys in 1987, starting with games, improving the game loading experience, application for transformer calculations, simon's Basic, playing Out Run, improving the software loading experience with screwdrivers, learning Turbo Pascal 5.0, writing an application for medical registry, learning C and C++, building websites, learning Java with Applets, building chatbots and natural language processing, learning lex and yacc, ads automation for local musicians with C-script and Common Gateway Interface (CGI), selling books online, starting an e-commerce framework with PHP, starting an e-commerce company, the German ecommerce company: intershop, neural framework with Java in 2008, openourcing neuroph on sourceforge, neuroph is winning the duke choice award, using NetBeans for building the neuroph UI, speed vs. readability, deep netts comes with commercial support, JSR 381: Visual Recognition (VisRec) Specification, Dr. Zoran Sevarac on twitter: @zsevarac and Zoran's deepnetts.com
An airhacks.fm conversation with Nicolai Parlog (@nipafx) about: Amiga 500, booting into blue environment, Settlers, dune game on Amiga, writing the first line of Turbo Pascal at high-school, starting with Java in 2001 with Applets, the dining philosopher's problem with Java, Karel the Robot in Java, studying math is hard, Temporal logic and formal verification, the endless loop of frustration and challenge, mathematicians and formulas, solving an equation is refactoring, learning complexity theory, TLA+ and Lesley Lamport, Amazon S3 formal verification with TLA+, cost estimation in large scale projects, java.awt.List vs. java.util.List Kotlin vs. Java 17 productivity, Java is the lowest possible denominator, working for lichtblick - the renewal energy company, implementing energy model for Fraunhofer in Karlsruhe, linear programming with simplex in C, dependencies come with a cost, dependencies are liability, starting to work for Oracle as Java Developer Advocate, Nicolai Parlog on twitter: @nipafx, Nicolai's website: nipafx.dev
זהו פרק 413 של רברס עם פלטפורמה, הוקלט ב-8 ביולי 2021, וזה הטייק השני - הטייק הראשון היה מוצלח במיוחד, אבל הוא לא הוקלט . . .אז הנה אתם פה, בטייק 2, יחד איתנו - כן, אני יודע שבשבילכם זה הטייק הראשון, בסדר - אז היום אנחנו נמצאים באולפן שלנו ביוקנעם עילית (!), אורי נמצא בחופש ומחליף את אורי יונתן מ-Outbrain - היי יונתן, מה נשמע?(יונתן) היי, מה העניינים?(רן) מצויין, ברוך הבא - ואיתנו נמצא גם ירון מחברת Soluto - היי ירון!(ירון) היי, מה העניינים? נעים מאוד . . . .(רן) טוב שבאת - היום אנחנו הולכים לדבר על GitOps, בפעם הראשונה.ולפני שנדבר על GitOps, נעשה סבב היכרות קצר - יונתן, היית כאן הרבה פעמים בפודקאסט לפני זה [הקדמה והיכרות - בפרק הקודם], אבל בוא ספר לנו בכל זאת עוד קצת על עצמך - (יונתן) אז אני הגעתי ל-Outbrain לפני 10 שנים, כמהנדס Backend, ובחמש השנים האחרונות אני מנהל את הפיתוח.ומאזין ותיק של רברסים [וגם אורח - 328 The tension between Agility and Ownership או Final Class 23: IDEs או 131 uijet או 088 Final Class 2, וכמובן 412 Serverless at Via](רן) מצויין - טוב שאתה פה.ירון - שני משפטים עליך?(ירון) אז אני ירון עידן, אני מוביל את צוות ה-DevOps ב-Solutoאני משחק עם מחשבים כבר יותר מ-20 שנה - התחלתי בצבא בתור DBA ואחרי זה עברתי להיות מפתח.לפני כמה שנים כבר גיליתי את עולם ה-DevOps ועברתי אליו לחלוטין - ומאז אני מאוד נהנה מהעולם הזה.ב-Soluto אני עושה את זה כבר משהו כמו חמש שנים.אני אספר גם קצת על Soluto, החברה שבה אני עובד - Soluto היא חברה שרוצה להפוך את הטכנולוגיה לדבר יותר ידידותי, בעיקר עבור אנשים שעבורם טכנולוגיה “זו לא השפה הראשונה שלהם”.אז המשתמשים שלנו יכולים לגשת לממשקים ב-Web או ב-Mobile ובעצם לקבל את המיטב מהמנויים הדיגיטליים שלהםלוודא שכל המידע שלהם מאובטח ושמוראם יש להם איזושהי מכונת כביסה חכמה בבית אז הם יכולים לוודא שהמכונה מתפקדת כמו שצריך ושהם מצליחים להשתמש בה . . .ובצד השני - יש להם גם את היכולת לפתוח איזשהו צ'אט, איזשהו Session של Chat עם Expert-ים - וגם הם משתמשים בפלטפורמה שאנחנו מפתחים בתל אביב, שנקראית Anywhere Expert, והיא מאפשרת לתומכים טכניים להיות מסוגלים לעשות את הסשנים האלה מהבית שלהם, מתוך איזושהי אפליקציה, כמו ב-Uberכבר לא צריכים לשבת בתוך איזה Cubical עם אוזניית מדונה ב-Setting קצת אפרורי - אלא ממש להשתחרר ולעשות את זה בתנאים שלהם.זה מייצר Disruption ענק לכל התעשייה הזאת של Tech-support בארה”ב - שם נמצאים רוב הלקוחות שלנו.(רן) אז זה, למעשה, Marketplace של תומכים ונתמכים - מצד אחד יש את הנתמכים, שאלו אנשים שיש להם, לצורך העניין, בעיה עם הטלפון או עם מכונת הכביסה או כל מכשיר אחרומצד שני התומכים, שבזמנם . . . אולי בנוסף על עבודתם, כמו שאמרת כמו ב-Uber, עושים השלמת הכנסה בזמנם החופשי.(ירון) כן - אנחנו אוהבים לחשוב על זה שאנחנו מצליחים לתרום לשני הצדדים הרבה מאודגם לגרום לאנשים להרגיש שהם מוציאים את המיטב ממה שהם שילמו עליו כסףוגם לגרום לאנשים לעשות את העבודה שלהם בתנאים יותר משחררים [אה . . . ](רן) אז הנה שאלה מפתיעה, שהרבה זמן לא שאלו אותך - אמרת שאתה כבר מתכנת הרבה זמן, אז תהיתי מה היה המעבד הראשון שסבל את נחת זרועך?(ירון) אז יש לי Deja Vu . . . אני חושב שזה היה 386 לדעתי? אבל נראה לי שעברתי על כל הסדרה, ואיפשהו בילדות מצאתי מצאתי איזושהי חוברת כזאת בעברית שמלמדת לתכנת ב-Basic, התחלתי לפתוח אותה - ומאז לא הפסקתי.(רן) עדיין ב-Basic?(ירון) התקדמתי מאז - עכשיו אני ב-Pascal . . . [אין יותר טוב מזה](רן) יפה . . . Turbo Pascal [אוקיי, יש יותר טוב…], Object Pascal . . . נחמד - הכחול והתכלת הזה, מקסים, הנדסת אנוש למופת.[אתה לא ציני, נכון? זה היה נפלא]בסדר - אז אנחנו התכנסנו היום כדי לדבר על GitOps.כולם, פחות או יותר, יודעים מה זה Git, וכולם, פחות או יותר, יודעים מה זה Ops - החלק המעניין של DevOps, להזכירכם . . . אבל מה זה GitOps? מה זה השילוב הזה ביניהם?(ירון) אז כן - דבר ראשון, הטרנד היום זה באמת לשים סיומת של Ops על הכל . . . יש DataOps ויש MLOps, אז עכשיו יש גם Buzzword חדש שהוא GitOps.אנחנו ב-Soluto עושים את זה כבר הרבה שנים, בלי לתת לזה את השם הזה, אבל אני כן אתן את ההרחבה של “מה זה בעצם אומר?”אז GitOps היא איזושהי מכניקה של CD, איזושהי אימפלמנטציה (Implementation), שמאפשרת למפתח לדלבר (Deliver) את המוצר שלו ל-Production בצורה שבה Git, או הקוד שיושב בתוך Git, ייצג את המצב של Production.אז אם ב-Continuous Delivery רגיל, יש איזושהו מבוך רציני, שהקוד צריך לעבור מהרגע שהוא Committed ל-Branch הראשי, ועד שבאמת אפשר לראות אותו ב-Production - אז GitOps מנסה לחסל כמה שיותר מהמחסומים האלהובאמצעות איזשהו רכיב שעושה פעולה שנקראת Reconciliation, לבדוק מה המצב של הקוד ב-Git, ולראות האם Production עונה על אותן הגדרות - ואם יש צורך אז לסנכרן בין שני הרכיבים האלה.(רן) כשאתה אומר “מבוך” ,אתה מתייחס, נגיד, לפרישה בהתחלה כ-Canary, ואחר כך אולי פרישה של 25% ב-Data Center אחד ואחר כך ב-Data Center אחר? זה המבוך שאליו אתה מתייחס?(ירון) אז האמת שהמבוך הזה יכול להיות קיים גם ב-GitOps, אבל אנחנו, ספציפית ב-Soluto כן משתמשים ב-Canaryהוא אפילו ניהיה הרבה יותר נגיש עבורנו בזכות השימוש שלנו ב-GitOpsשני הדברים האלו הם לא Mutually-exclusiveהמבוך שאני מתאר זה בעיקר להיכנס לתשתית של ה-CI, ללחוץ על “Deploy”, לראות שמשהו נתקע, להיזכר שהיה צריך לשדרג את ה-Script שעושה את זה . . .(רן) כן . . . בעצם אתה מדבר על ההתערבות האנושית שנדרשת אחרי שהקוד כבר נמצא ב-Master . . .(ירון) נכון - וגם זיהוי של טעויות שמתרחשות בזמן ה-Deployment - נניח, אצלנו ראינו הרבה פעמים שבגלל התאימות היחסית של Pipelines של Deployment, הרבה פעמים יש שגיאה ב-Production, והיא לא משתקפת חזרה ל-Pipeline של ה-Continuous Delivery - ואז המפתח פשוט יושב ואומר “טוב, זה כנראה לוקח לו הרבה זמן . . . זה כנראה הגמדים שלוקחים את הקופסאות ל-AWS התעכבו בדרך . . . “ורק אחרי 20 דקות או 30 דקות יש איזושהי הבנה שמשהו השתבש בצורה נוראית . . . (רן) זאת אומרת - ברגע שאני עושה Merge של Branch ל-Master - אני אף פעם לא אעשה הרי Commit ל-Master, זה אסור . . . - ברגע שאני עושה עושה Merge ל-Master, אני צריך להניח שהכל, כאילו, ב-Production, נכון?(ירון) לאו דווקאיש כלים של GitOps שלוקחים את זה בתור ה-First Class Citizen, הם באמת בונים על זה שתיהיה סדרה של הגנותבין אם זה טסטים ו-Smoke Tests או Canary ו-Gradual releases, כמו שהזכרתוהם פשוט מניחים שהמשתמש עושה בהם שימוש.אנחנו מעדיפים Deployments יותר קונטקסטואליים, ובגלל זה בהתחלה התחלנו להשתמש ב-Flux, שהוא כלי של WeaveWorks שלוקח את המתודלוגיה הזאת קדימה, ומנסה באמת “לאסור על ה-user” ליצור שינויים . . . ליצור הבדלים בין Production לקוד.ועברנו ל-Argo - כלי של Intuit - שחולק איתו הרבה מהקוד, אבל משנה הרבה מהדינמיקה והמכניקה.הוא מאפשר באמת קודם כל להכניס את הקוד לתוך ה-Master - ורק אחר כך להגיד למפתח “תעשה את הסנכרון שלך בצורה מודעת”.יש גם אופציה ליצור Sync אוטומטי, ואז ברגע שההגנות האלו נמצאות ובאמת יש את הבטחון לדעת שמה שנכנס ל-Master יכול להגיע ל-Production, ניתן להדליק את ה-Flag הזה ולהינות מחיים עם הרבה פחות Toil, הרבה פחות עבודה ידנית.(רן) אז דיברת על Reconciliation ועל זה שיש הפרשים בין מה שקיים ב-Master, שאמור לתאר את סביבת ה-Production, לבין סביבת ה-Production האמיתית, וההפרשים האלה יכולים לנבוע מכמה דברים - קוד שנכנס ל-Master, אבל עדיין לא עבר Deployment, אבל זה יכול גם להיות לנבוע מזה שהלך איזשהו איש Ops ושינה את ה-Production . . . נכנס ל-AWS או עשה SSH לאיזשהו שרת ושינה שם משהוואולי יש Drift-ים מכל מיני סוגים, ואני בטוח שכל מי שנמצא בעולם האופרציה נתקל בדברים האלה.אבל איך . . . מתי זה הגיע לנקודה שבה זה ממש הפריע לכם, ואמרתם “עד כאן! פה אנחנו חייבים לקום ולעשות איזשהו מעשה! אצלנו לא יהיה הבדל בין Master ל-Production!” . . . היה איזשהו אירוע מכונן שגרם לכם לעשות את זה?(ירון) אז היה . . . לפני שאני אסביר את האירוע הזה, אני גם אסביר איך הגענו למקום שבו אפשר לחשוב בכלל על הקונספט הזה.כמו שאמרתי - עשינו את זה עוד הרבה לפני שקראו לזה GitOps, והתחלנו במקומות הרבה יותר Low-stakes מסביבת ה-Production, שמגישה תוכן לקרוב למאה מיליון משתמשים היום . . .איפה שהתחלנו זה בתשתית הניטור שלנו - זה היה כבר לפני יותר מחמש שנים.רצינו לעשות דמוקרטיזציה של הניטור, לא רצינו שזה יהיה משהו שמפתח אומר “אני רוצה לנטר בבקשה . . . קח את השליפה הזו ושים אותה בבקשה על הכלי”וכדי שזה יקרה, יצרנו איזשהו Repository, שמנו בו קובץ JSON ענק ואמרנו למפתחים: “פשוט תכתבו פה את כל מה שאתם רוצים לנטר, וזה יגיע “בדרך קסם” אל התשתית”.אז זה היה ה-Production הראשון אצלנו שבעצם כל Commit ל-Master הסתנכרן עם הקוד, והיופי של זה היה שבאמת יכולנו לשחק פה ב-Stakes יותר נמוכים.שבירה של תשתית ניטור זו בעיה מסדר שני - משהו שיכול לקרות לדקה-שתיים בלי שהמשתמשים ירגישוזה בדרך כלל קורה בצורה מבוקרת, כשהמפתחים במשרדולכן זה היה משהו שנתן לנו להתנסות עם זה בצורה בטוחה.(רן) אז למעשה, המוטיבציה הראשונית שלכם הייתה לספק חווייית-מפתח יותר טובה - במקום שהוא ילך ויפנה אליכם ויבקש “תוסיפו לי בבקשה Monitoring” או שבמקום שיצטרך להכיר את כל החוכמות של כלי הניטור, הוא יכול לערוך איזשהו קובץ JSON ולעשות Commit - ומבחינתו זה ממשק העריכה - ועכשיו הוא מבין שברגע שהוא עשה Commit, יש איזשהו Hook שלוקח את הקובץ הזה ועושה לו Apply ל-Production.אז מבחינתך זה איזושהי חוויית מפתח יותר טובה - אבל זה עדיין . . . זאת אומרת, אני לא רואה עדיין איך זה בא ומטפל בתקלות Production . . . (יונתן) לכאורה, יכולת לממש את זה גם, נניח, עם CI/CD רגיל, נכון? בלי “הקונץ” הזה של הסנכרון או לבדוק את הפערים?(ירון) נכון - ואני אפילו אגיד שבאיזשהו שלב עברנו לזה: היה לנו Repository אחד מרכזי ואז הכנסנו איזושהי תשתית “כמו CD”, שלוקחת Commit-ים מ-Repository אחד ומזריקה אותם ל-Repo המרכזי הזה.ושם כבר התחילו להרגיש את החסרונות שאמרתי - הכלי היה נשבר הרבה פעמיםהיו נוצרים מצבים שבהם ה-Pipeline הקלאסי הזה, שמנסה להגיע למקום ה-GitOps-י, נתקע בגלל כל מיני טעיות שלא חזינו מראש, והיה קשה לקבל Visibility על דבר כזה.זה דורש יצירה של המון כלים, רק כדי שהדבר הזה יעבוד בצורה שהיא Flowless.(יונתן) עוד משהו שרציתי לשאול - איך ה-GitOps אל מול Infra-as-a-Code - זה משלים את זה? זה השלב הבא של זה?(ירון) זאת שאלה מעולה, כי באמת הרבה פעמים, את ה-Infra-as-a-Code אנחנו עדיין עושים עם כלים שהם יותר “Push-יים” כאלהאנחנו עבדנו קצת עם Terraform, נטינו יותר לכלי שנקרא Pulumi, שהוא סוג-של-כזה-Wrapper סביב Terraform, עם שפות תכנות יותר נפוצות.ושם מרגישים בדיוק את העניין הזה - שכדי עכשיו לשנות את ה-Infrastructure שלי, אני צריך לעשות Apply . . .ולפני שאני צריך לעשות Apply, אני ארצה לעשות איזשהו Preview, ולהציג אותו למפתחים, כדי שהם יבינו איזה שינוי הולך לקרות.ואז המנגנון הכמעט-אימפרטיבי (Imperative) הזה הוא נורא מורגש - נורא מורגש שהולך להיות איזשהו שינוי, וצריך לעשות איזושהי פעולה כדי שזה יקרה.ואחד הכלים שאנחנו מסתכלים עליהם יותר ויותר נקרא Xstate, וזה כלי שבאמת שם את ה-Infrastructure שרוצים ליצור כ-Custom resources בתוך Cluster של Kubernetes, ואז יש איזשהו Reconciliator, שבמקום לעבור עם ה-API של Kubernetes, הוא עובד עם ה-API של AWS או Azure או GCP - יוצר שם את אובייקטים.וזה שוב - שינוי תפיסה יחסית מאסיבי, כי זה אומר שברגע שמפתח עשה commit ל-Master, אז Xstate תופס אותו ומסנכרן אותו לענן אין איזשהו שלב באמצע של Apply, של Preview . . . כל הדברים האלה חייבים לקרות ב-PR, לפני שהקוד משתנה.(רן) מצד אחד - זה נשמע נורא אלגנטי . . . כאילו פיהם וליבם של Production ו-Master שווים. מגניב, נורא סימטרי כזה, נורא פשוט . . .מצד שני - גם נשמע נורא מסוכן: עשיתי Commit . . . סליחה - עשיתי Merge ל-Master, לא עשיתי Commit ל-Master. . . עשיתי Merge ל-Master, ואולי אני לא כל כך יודע מה זה הולך לייצר, זאת אומרת - אני לא יודע שזה עכשיו אולי הולך לייצר בלגאן לא נורמלי בתוך Production. . . אין לי איזשהו מקום קטן שבו אני יכול ככה להתנסות, בקטנה, לפני שאני עושה את ה-Commit? איך מטפלים? איך עושים מיטיגציה (Mitigation) למוטת הכנף הענקית שפתאום כל אחד מקבל?(ירון) זו שאלה נהדרת, כי היא מחזירה לשאלה הקודמת ששאלת - של בעצם “איזו בעיה ניסינו לפתור?”כי דווקא בניגוד או בהיפוך כזה של התמונה הזאת, החוסר ביטחון הגיע לפני שהיה לנו את ה-GitOpsהייתה לנו בעיה שהתשתית… פשוט כשעובדים עם תשתיות כמו Kubernetes אז התשתית נהיית מאוד מאוד מורכבתהיא גם נהיית במצב שכדי להרים Cluster חדש, במקרה של איזושהי בעית Production, בנאדם צריך לעשות פעולה ידנית, שיכול להיות שיכולה לארוך כמה שעות - וזה היה מצב מאוד לא נוח.קשה היה לדעת, כשיש לי מספר מוגבל של Cluster-ים - במקרה שלנו שניים - ואם עכשיו אחד מהם נופל אז אני צריך להיכנס למרוץ נגד השעון כדי ש-Cluster חדש יעלה.וזה גם עיכב אותנו מלייצר, אולי, את מה שרמזת אליו - שזה איזשהו מקום, איזשהו “מגרש משחקים” או ארגז חול בצד, שבו אפשר לעשות את כל השינויים בצורה בטוחה, ולדעת שלא משנה מה אני אשבור - Production לא ידע מזה.וזאת בעיה אחת שבאמת נאבקנו בה הרבה לפני שהגענו לעולם ה-GitOps המובטח.בעיה נוספת, שגם אותה אני אסביר איך GitOps פתר עבורנו, זה הארגונומיה של המפתחים מול Kubernetesכי מפתחים אצלנו היו רגילים לעבוד מול אילו-שהם Self-contained Services, שרצים על PaaS, כמו Herokuבמקרה שלנו זה היה Azure, אבל זו הייתה איזושהי סביבה סגורה, מכונות וירטואליות שכל מפתח קיבל, שמריצות את ה-Services שלו.ופתאום לעבור ל-Cluster שהוא Multi-tenant, שכולם עובדים ביחד, שצריך לדעת לא “לדרוך אחד לשני על הבהונות” . . . שיש בהם הרבה-הרבה אובייקטים חדשים שהמפתחים לא מכירים - יצר שינוי פרספקטיבה, שלא היה קל להנחיל לצוותי הפיתוח.אנחנו בצוות עבדנו עם Kubernetes הרבה, אבל המפתחים לא תמיד רצו להבין את המורכבות הזאת, והיה קשה לחשוף אותם לזה בצורה שתפגע איפשהו באיזון הזה . . .(רן) אז גם בהקשר הזה, זה נשמע כאילו אתה בעצם מייצר ממשק למפתחים עבור Kubernetes . . . זאת אומרת: “אתם לא צריכים ללכת ולהשתמש ב-Kubectl או בכלים אחרים” אלא אתם צריכים, לצורך העניין, “לעשות Commit לאיזשהו קובץ JSON ומשם אנחנו כבר נטפל בזה”.(ירון) נכון . . . אז היום הכל YAML, אבל כן - זה השינוי המרכזי שעשינו . . .(רן) . . . השתדרגנו . . . (ירון) . . . עכשיו יש מקפים במקום סוגריים מסולסלים . . .(יונתן) תזהיר את אבישי - יש לו איזה משהו נגד YAML-ים . . (רן) מאזיננו אבישי - תסתום רגע את האוזניים . . . כל העולם YAML כבר, אין מה לעשות . . .(ירון) בהרבה מקומות ראיתי שכבר מגייסים מפתחי YAML . . . (רן) כן - אולי המפתחי XML בפנסיה יהפכו למפתחי YAML . . . נחזור רגע אחורה - דיברת קודם על המוצר שלכם, ואמרת שהמוצר הזה יודע לתת תמיכה למכונות כביסה למחשבים אישיים וכו'. אז כל פעם שאני עושה Commit ל-Master, נגיד לאפלקיציה ה . . .(יונתן) אתה לא עושה Commit ל-Master, רן . . . . תזכור - עוד פעם, אני אעשה לך Reject . . . (רן) איך נפלתי . . . זה הפרוידיאני בי שמדבר . . . אז כל פעם שאני עושה Commit ל-Branch, ו-Merge ל-Master, אחרי Code review, כמובן, ומתקן את כל ההערות, ועובר CI - אז לאפליקציה האחרונה המגניבה שכתבתי למכונת הכביסה של סבתי - אז זה מיד הולך לכל מכונות הכביסה בעולם? לכל הטלפונים בעולם? זאת אומרת - זה באמת מה שאנחנו רוצים?(ירון) אז התשובה היא “לא” . . . כמו שאמרתי, יש לנו מידה מאוד חזקה של Control, כי ככה רצינו לבצע את השינוי הזהלא רצינו להפחיד אנשים ולהגיד לכל מי שעובד על הקוד אצלנו “תזהרו מאוד מה-Master!”הרעיון היה באמת לאפשר לאנשים יותר Visibility, יותר שקיפות - ולאט-לאט להגיע למודל הבגרות הזה, שבו אנחנו מרגישים בנוח לסנכרן דברים בצורה אוטומטית.זה אומר שהיום, רב שירותי ה-Backend שלנו נפרשים באמצעות כלי GitOpsבאמצעות Argo, שציינתי קודםמה שהמפתחים מקבלים מזה זה להחליף את ה-Pipeline המסועף והקשה להבנה באיזשהו Commit ל-Masterעכשיו, במקום לעשות את ה-Deployment בשלב הזה של ה-Pipeline, יש רק Commit אחד, שמשנה את ה-Version ש-Argo מסתכל עליו.ברגע שנעשה שינוי ה-Version הזה, המפתח הולך ל-UI אחר, של Argo - הוא רואה בצורה מאוד מאוד ברורה שהשתנה שדה מסויים ב-YAML של ה-Deployment שלו, עם ה-Tag.וזה מייצר הרבה דברים מאוד טובים עבורנו - כי גם אם עכשיו מבצעים סנכרון של הדבר הזה, אז זה כבר לא איזשהו Context-switch של לעבור עכשיו ולהסתכל מה המצב - Argo ממש מראה יפה, עם לבבות ירוקים או לבבות אדומים-שבורים , מה הסטטוס של הגרסא הישנה והגרסא החדשה.וזה נותן פידבק מאוד מהיר - האם השינוי הזה כרגע עובד? האם השינוי הזה נכשל? האם צריך לחזור רגע לשולחן השרטוטים ולתקן אותו?במצב הנוכחי, זה דווקא הגביר מאוד את ה-Control ואת השליטה שלנו ב-Production, ולא יצר אי-יציבות וחסר ודאות.(יונתן) ה-State הזה, נניח של שינוי הגרסא - נניח שאני מהנדס, ויש לי גרסא חדשה - אתה אומר, בעצם, שדבר ראשון אני צריך לעשות Branch ו-Commit ו-Merge, בגלל שאני רוצה גרסא חדשה, עם איזשהו Tag - זה ב-Repository של האפליקציה שלי או שזה ב-Repository של האפליקציה שמנהלת את ה-GitOps?(ירון) זו שאלה נהדרת, כי באמת אנחנו עושים משהו לא מסורתי שם - אנחנו כן עושים את כל השינויים האלו ב-Repository של הקוד, ובדרך כלל - אני מקשיב בכנסים, קראתי פוסט יפה של מישהי מ-Riskified שכותבת איך הם עובדים עם Argo - וראיתי שהקונצנזוס, פחות או יותר, הוא להפריד את ה-Repository שהמכונות קוראות וה-Repository שבני האדם קוראים . . . אז בדרך כלל, מה שמקובל זה ליצור, נגיד, את “Yaron-API”, להגיד שזה הולך להיות ה-Service שלי, ופה אני, כבן אדם, כותב קוד - ואז לתת למכונה לעשות את ה-Commit לאיזשהו Repository אחר, שיקרה “Yaron-API-Deployment”, ומשם לקחת את ה-State שה-Argo מסתכל עליו.אנחנו, פשוט בגלל שרצינו את הנושא הזה שאמרתי קודם - רצינו לשפר ארגונומיה של מפתחים - לא רצינו שיהיה להם את ה-Context-Switch הזה, את המעבר כל הזמן בין ה-Repo שבו הקוד כתוב לבין ה-Repo שבו ה-Deployment קורה . . .(יונתן) גם יש עוד יתרון - אתה תעשה git-log ותראה את ה-Deployments ולא . . . הרבה אנשים אומרים הפוך . . . הם אומרים “אני לא רוצה לראות Commit-ים של מכונה” [אחלה שם לפודקאסט, אגב], זה לא קדוש.אבל אנחנו מאמינים שה-Commit-ים האלה באמת, כמו שאתה אומר, מייצגים את השינוי של ה-State.(רן) אני מניח שהויכוח הזה, או הדילמה הזו, במצב של Mono-Repo היא פחות רלוונטית - עדיין יש התלבטות, נניח שאנחנו בעולם של Mono-Repo, ואני מבין שאתם לא - יש את ההתלבטות של האם לשים את הקונפיגורציה קרוב לקוד, או את כל הקונפיגורציה במקום אחד, לצורך העניין באיזשהו Branch או תת-עץ של ה-Mono-Repo.גם אני הייתי בהתלבטות הזאת הרבה פעמים, ואני חושב שיש פה Trade-off - מצד אחד זה נחמד שהקונפיגורציה קרובה לקוד, ולפעמים ממש בתוך הקוד; ומצד שני, זה גם נחמד לקבל איזשהו מבט על כל הקונפיגורציה של כל ה-Service-ים השונים, וככה להבין איך הדברים קורים.אז אני מבין שאתם יותר נוטים לשים את הקונפיגורציה קרוב לקוד, אם אפשר לקרוא לזה “קונפיגורציה”, בוא נקרא לזה . . .?(ירון) אז גם פה יש כמה תשובות . . . דבר ראשון - אנחנו לא נגד Mono-Repo, אנחנו מאוד-מאוד בגישה של “לתת למפתחים ולמפתחות פשוט להחליט מה הכי טוב ב-Context של המשימה הנוכחית” ולכן יש אצלנו קבוצה שלמה שעובדת בתוך Mono-Repo אחד, שמחזיק את כל ה-Service-ים, בלי שום קונטקסטויש לנו קבוצה שעובדת עם Repo-per-Serviceויש קבוצה שלישית, שעובדת עם Mono-Repos קונטקסטואליים . . . (יונתן) אתם לא נגד Mono-Repo - פשוט יש לכם הרבה כאלה, זה מה שאתה אומר . . . [“רבים מידידי הטובים ביותר” וכו'…](ירון) בדיוק . . . אנחנו אוליגו-Repo . . .(רן) לא, יש לזה גם שם - Multi-Mono-Repo . . . כתבו את זה לפנינו . . .(ירון) כן . . . אז לא הגענו למצב שבאמת אנחנו יכולים להגיע לרמות של Facebook, והקסמים שהם עשו עם Mono-Repos שם.בסוף, Mono-Repo ענק שמחזיק את כל הקוד זו לדעתי משימה הנדסית כבירה, וצריך לעשות אותה בצורה מאוד מחושבת.ושוב - בגלל הצורה ה-Distributed והלא-פרספקטיבית שאנחנו עובדים בה, שאנחנו לא רוצים להגיד לאנשים איך לעבוד, אז כמעט בלתי אפשרי לחשוב על “כל המפתחים ב-Soluto כותבים ל-Repository אחד”,כי דברים קמים, אנשים רוצים לשנות דברים, להתנסות עם משהו חדשוברגע שאנחנו מאפשרים את זה, אז לא נקבל אף פעם את השליטה של להגיד לאנשים “כל ה-Commit-ים שלכם עכשיו יהיו רק ב-Soluto-Code” [וגם אז - רק אם הם טובים]וזה נחמד, כי זה כן גורם לנו להתקדם קדימה . . .(רן) כן . . . אני חייב להעיר שאם כל זה שאני מכבד את שיקול דעתם של המפתחים, ואני הרבה פעמים גם לא רוצה להגיד למפתחים אחרים מה לעשות - אני חייב להגיד שלפעמים יש הרבה חוכמה בכן להגיד למפתחים מה לעשות, כי אני חושב שהרבה פעמים ההחלטות הן שרירותיות, והחלטה אחת טובה כהחלטה אחרת - הבעיה שכששתי החלטות, ששתיהן שקולות, אבל כששתי החלטות נלקחות, אז אתה בבלגן . . . אז דווקא בקטע הזה אני נוטה להיות קצת יותר הדוק, ולבוא ולהגיד “חבר'ה, נכון - יש פה שתי דעות, אבל אני בוחר את זאת, “כי ככה” - ובואו נתגלגל עם זה הלאה”כי אחרת פשוט נוצר בלגאן - וראיתי את זה קורה בחברות גדולות . . . ראיתי את זה קורה ב-Google,אני מבין ממה שאתה אומר שזה קורה גם ב-Facebook . . . מתקבלות החלטות שרירותיות, וכל המפתחים לפעמים אולי מקטרים - אבל הולכים לפיהןוזה עושה הרבה טוב, בסופו של דבר - “המסר שלי לאומה” הוא של “לא לפחד לקבל החלטות בשביל המפתחים”, ובסופו של דבר, בשורה התחתונה, אני חושב שזה עושה טובה, כי זה יותר קל כשדברים הם אחידים.(ירון) זה מעניין מאוד - ואני חושב שמה שאתה מציין הוא גם פונקציה של גדילה.אני חושב שיש שלב מסויים שבו חברה יכולה להרשות לעצמה להתפזר יותר ולנסות יותר דברים, ויש שלב מסויים שבו צריך להתכנס ולהגיד “אוקיי, ה-Business הגיע ל-SLA מאוד גבוה שהוא צריך לספק, החברה גדולה מספיק כדי שלא נוכל לתת ל-15 Frankenstein-ים לרוץ במקביל, המפלצות של . . .(רן) כל מפלצת טובה . . . כל מפלצת לכשלעצמה היא בסדר . . . אני לא אומר שההחלטות הן לא נכונות, הבעיה שיש החלטות אחרות, והחלטות סותרות לפעמים, החלטות שלא עובדות טוב אחת עם השנייהאו אפילו אם לא סותרות - לייצר Infrastructure שמתאים גם . . . לצורך העניין אפשר לקחת שפות תכנות - Infrastructure שמתאים גם ל-Python וגם ל-Ruby וגם ל-Java זה אפשרי, אני בטוח שזה אפשרי - זה רק יותר קשה.אז אתה יודע - שפות תכנות אפשר בדרך כלל, רוב החברות מתקבעות, זו לא הבעיה - אבל עדיין יש עוד הרבה בחירות אחרות:איך עושים Messaging, איך שומרים, באיזה Database משתמשים וכו'.(יונתן) אני חושב שאני מסכים - מבחינתי, המדד של מתי צריך לקחת כזאת החלטה או “דיקטטורה נאורה” שכזאת זה כשאתה צריך “לעבוד לרוחב”דיברת על תשתיות - ברגע שאתה צריך להתחיל . . . כשתשתיות נהייה “עניין”, אז קשה לתמוך בוריאנטים השונים . . . [כן . . .](רן) בוא נחזור רגע אחורה ל-GitOps . . . אז נלך, שנייה, Back-to-Basics: הבנו את הקונספט של “Mater ו-Production צריכים להיות שווים”. אז אני, אתה יודע, מתחיל ככה ב-Back-to-Basics ואני רוצה לעשות GitOps, אוקיי? אז מה אני עושה? אני מייצר Git-Hook, ובעצם אני צריך לדאוג לשני דברים . . .אחד זה שיהיה לי קוד שיודע לתאר את סביבת ה-Production, נגיד - כמה Server-ים, כמה Services, מה ה-Multiplicity שלהם, כל מיני דברים . . . מה שיודע. . . לצורך העניין קובץ YAML שיודע לתאר את סביבת ה-Production, ובטח יש שפות למכביר שיודעות לעשות את זה.אז אני צריך קוד שיודע לתאר את סביבת ה-Productionושתיים - אני צריך לדעת לעשות איזשהו Git-Hook, נגיד, שכל פעם שעושים Commit אז Production מתעדכן לפי מה השינוי האחרון.אז זה אולי GitOps בממש-ככה-30,000 רגל - ואתה הזכרת שיש כמה כלים שיודעים לעשות את זה - הזכרת קודם את Flux של WeaveWorks והזכרת את Argo של Intuit - ואני מניח שיש עוד כלים אחרים בשכונה.אז אם קם הבנאדם בבוקר ואומר “יאללה - בא לי GitOps!” [חמור מאוד] או “אני חייב GitOps!” [תופעת לוואי חדשה?] או “המנהלים שלי אומרים לי שאני צריך GitOps . . . “ [המקרה היותר נפוץ?] - איך אתה ממליץ לו להתחיל?(ירון) אז אני אזכיר פה את Kelsey Hightower, שהוא מן בחור כזה שאוהב לדבר על Kubernetes, מ-Google [בדיוק זז שם קצת], ואני מאוד אוהב גם את הצורה שבה הוא מנגיש ידע מורכבנגיד, לפני הרבה שנים הוא כתב את Kubernetes-the-hard-way [אבל כבר קישרתי לזה…], שזה מעיין מדריך על איך להרים את Kubernetes מ-Scratch, לעשות את כל הפעולות שעשויות, עבורנו, בצורה ידנית - וכשעברתי דרכו הרגשתי היכרות הרבה יותר טובה עם התשתית הזו, שהיום מעירה אותי בלילה אם יש לה בעיה . . .והוא עושה הרצאה מדהימה - יש כבר כנסים שנקראים GitOps Days מרוב שהדבר הזה טרנדי - הוא עשה הרצאה ממש מעניינת בכנס שהיה בשנה שעברה, שבה הוא מראה איך עושים Reconciliation Loop מ-Scratch . . . הוא ממש כזה . . . מראים קוד שהוא כותב ב-Go תוך כדי על המסך, תוך כדי הכנס - והדבר הזה מייצר, במקרה שלו, פונקציות של Cloud Run, שזה איזשהו Serverless כזה של Google.אני חושב שההרצאה הזאת היא פתיח מדהים בשביל לעשות דימיסטיפיקציה (Demystify) למשהו שבאמת, כמו שאמרת, יכול להישמע מורכב ויכול להישמע אפילו די מפחיד, כי זה מראה שהדבר הזה יכול להיות מאוד נשלט.אחרי שעוברים את המשוכה הזאת, של להבין את הקונספט, הייתי כן ממליץ לבחור את אחד מהכלים הגדולים - בין אם זה Argo או Flux, כי הם כרגע הכלים ששולטים בשוקאבל גם חשוב מאוד, כנראה, להבין את הבעיה - אם Argo ו-Flux מתאימים מאוד לתחזוקה של Kubernetes, אז אם רוצים לתחזק משהו שהוא מחוץ ל-Kubernetes, צריך לבחור משהו שהוא כלי שיודע לעשות את זה גם בלי הכוח הזה.וכמו שאמרתי - גם Puppet ו-Chef יודעים לעשות את זה עבור מכונות Linux, ויש כלי שנקרא Atlantis, שיודע לעשות את זה עבור Terraformואז בעצם כל אחד מהכלים האלה יכול להיות Entry-point ל-GitOps, לא משנה מה האתגר שכרגע עומד מולכם.(רן) נזכיר, אני חושב ששווה אולי לבוא ולמצוא את המקבילות בין הכלים השונים - אז גם מי שמכיר את Puppet ואת Chef - הם כולם עובדים באיזשהו Mode של Reconciliation Loopזאת אומרת - מסתכלים מה המצב הרצוי ועושים Apply, וכל פעם עושים Reconciliationזאת אומרת שאם משהו שהגדרת, לצורך העניין, שצריך להיות קובץ במערכת על מחשב והוא לא שם - אז הוא בכל פעם ייצר אותו מחדש אם הוא ימחק.גם Puppet וגם Chef עובדים באותה צורה - וגם Kubernetes הרבה פעמים עובד באותה צורה, זאת אומרת שגם ל Kubernetes יש Reconciliation Loop שמסתכל על ה-Resource-ים ועושה Apply ל-Resource מחדש בכל פעם שצריךכמובן שלא סתם . . . אז בהקשר הזה, המוטיב הזה של ה-Reconciliation Loop עובר, כנראה, בהרבה מאוד מהכלים שהזכרת.(יונתן) לפי מה שירון . . . לפי מה שתיארת, יש יכולת גם לעדכון מהצד השני - יכול להיות שזה לא שב-Production, לא רק שחסר קובץ, אלא שמישהו, לא יודע, שינה אותו, או שמישהו נכנס ל-UI של ה- Management של Kubernetes ושינה את ה-State Loader - איך ה-Flow המרכזי . . . מה יקרה אז?(ירון) זה בעיני הדבר . . . זה ממש ה-Added-Value, אולי אפילו ה-Killer-Feature של GitOps, כי אלו הפתעות שתמיד היו תופסות אותנו במקום הכי לא מוכן, ואני מאמין שזה קרה להרבה צוותי Production [מה?! מה פתאום?]שפשוט איזשהו שינוי נעשה בזמן של מקרה חירום, או אולי כלאחר-יד מתוך איזשהו חוסר הבנה, ולא הייתה לדבר הזה שום נוטיפיקציה (Notification)ואז בדרך כלל מגלים את זה חודשים, אם לא שנים, אחר כך, כשהידע כבר נשכח . . . יש את הפתגם הזה - שקוד שכתבת אחרי חצי שנה הוא כמו קוד שנכתב על ידי מישהו אחר [יש לזה אפילו שם - Eagleson's law] . . . אז גם עבור שינויים ב-Production הדבר הזה תקף - מה גם שהם הרבה פחות מתועדים . . .ב-GitOps, בצורה שאנחנו עובדים, Argo מחובר ל-Slack - וכל פעם שמישהו עושה Deployment יש הודעה חמודה כזו עם שאומרת “הקוד שלך שינה בהצלחה את ה-Production”אם במקרה, נגיד, הקוד שלי מסתמך על איזשהו Redis חיצוני, וה-Redis הזה פתאום נפל, אז אני אקבל “לב שבור ועצוב ” שאומר לי “רוץ מהר! משהו השתנה, זה כבר לא נראה כמו ה-Production, אני שבור וקשה לי” . . . (יונתן) אוקיי . . .(רן) מה ה-Hack החביב עליך? נגיד, מסוג הדברים שהתעוררת בשתיים-שלוש בלילה, וגילית “מי לעזאזל עשה את זה?!”? . . . אני אתחיל עם שלי - נניח שאתה נכנס ואתה מגלה שמישהו, לפני חצי שנה, כמו שאתה אומר, ערך את קובץ ה-Host והוסיף שם איזשהו Entry, כי כנראה פעם זה תיקן לו איזשהו משהו . . . עכשיו את מגלה ש Name Resolution מחוץ ל-Host עובד שונה לחלוטין ממה ש-Name Resolution עושה בתוך ה-Host - וזה מסביר הרבה דברים, בדרך כלל . . . (יונתן) סתם, פתאום התחלתי לחשוב האם זה יכול לעזור באילו-שהן בעיות של Security? או של מישהו ששינה משהו עקיף ב-Production, והוא לא עשה Git-Merge וכל הסיפור הזה . . . .(ירון) אז בהחלט . . . אני רק אגיד על ה-Hack-ים - שזה תמיד יהיה נס, אין ספק . . .ה-Hack החביב עלי זה שכשעובדים ב-High Availability, שולחים גרסא אחת של Production ל-Site אחד וגרסא שנייה ל-Site אחר - ועכשיו לך תבין למה חצי מה-Traffic מחזיר תשובה אחת וחצי מחזיר משהו אחר . . .(רן) יש את הסיפור המפורסם על ה-Trading. . . (ירון) כן, Knight - מסכנים . . .(רן) . . . שהם עדכנו גרסא, אבל כנראה נשאר שרת אחד או שניים, שאולי היו Offline בזמן עדכון הגרסא - וזה גרם לחברה לפשוט את הרגל, חברה של שווי, בגדול, של מיליארד דולר, שהפסידו ב-Algo-Trading את כל הכסף שלהם בגלל איזה Deployment שלא עלה נכון . . .(ירון) כן, זה סיפור נורא כשקוראים אותו, ופרקי הידיים מלבינים כי אתה חושב שאולי זה קורה לך עכשיו . . . (רן) ממש עכשיו . . . אבל ממש ממש עכשיו . . .(יונתן) . . תן לי רגע רק לבדוק את ה-Inspection . . .אז בנוגע ל-Security - יש כאן באמת יתרון אדיר, כי גם - ב-Continuous Delivery מסורתי, אני חייב לתת לתשתית שלי את היכולת לגשת ל-Production, ונגיד, אם זה Jenkins שיושב אצלך בשרת, אז לא אכפת לך כנראה לשים שם איזושהי גישת-כתיבה ל-Productionאנחנו עובדים עם SaaS, עם codefresh - חברה ישראלית שעושה CI ממש נחמד לדברים שהם Docker ו-Kubernetesועדיין, עם כל האהבה והרצון הטוב - אנחנו מעדיפים שהם לא יוכלו לגשת ל-Production . . . ברגע שאנחנו עושים את ההפרדה הזאת, הם יכולים לגשת רק עד הקוד - והמוצר היחיד שיכול לגשת ל-Production הוא ה-Reconciler של GitOps, שבמקרה שלנו זה שרת של Argo שיושב על ה-Clusterואז ה-Attack surface הוא הרבה יותר נמוך - כי הוא מלכתחילה יושב שם ומלכתחילה עושה שינויים, וזה טבעי שאצלו ישבו המפתחות [חביתוש?].ואני אעשה גם איזה Shout-out לפרויקט Open-Source שכתבנו ב-Soluto ושנקרא kamus - והוא גם מתבסס על GitOpsהרעיון שעשינו שם הוא שהראינו שה-Secret-ים ב-Kubernetes הם עוד לא בשלים, פחות או יותר - Secrets ב-Kubernetes הוא פשוט איזשהו אובייקט מקודד ב-Base 64, וזה אומר שכל מי שניגש ל-UI ב-Kubernetes ולוחץ על הכפתור של העין פשוט רואה את ה-Secret, פשוט רואה את ה-Plain-text, ולא הרגשנו עם זה בנוח . . .אז כתבנו Controller, שאפשר להתקין על כל Cluster, ומה שה-Controller הזה עושה הוא לאפשר למפתחים להצפין את הערכים מקומית אצלם על המחשב, לעשות להם Commit ל-Gitואז לכל Container נוסף איזשהו Init-Container, שעושה Encryption על ה-Cluster.זה גם מאוד מחזק את ה-Security, כי ה-Decryption יכול לקרות מעכשיו רק בסביבת ה-Productionזה דומה, נגיד, ל-Vault, אבל מגיע עם Operation overhead הרבה יותר נמוך.(רן) הזכרת מקודם - ואולי בזה, ככה, נסיים את הערב - הזכרת מקודם שעם המעבר ל-Kubernetes, מפתחים הרגישו איזושהי עלייה ברמת המורכבות, שהם פתאום צריכים להבין יותר Production, ואז יצרתם ממשק משתמש, או לפחות אני תיארתי את זה ככה - יצרתם ממשק משתמש, ממשק מפתח, באמצעות GitOps.האבחנה שרציתי להגיד זהש-Kubernetes מאפשר GitOps, נכון? אולי זה לא הכלי היחיד שמאפשר GitOps, אבל בהחלט אחד הכלים שמאפשרים GitOps.כי הוא נותן לך לתאר את סביבת ה-Production ולעשות לה Apply יחסית בקלותאז Kubernetes אמנם מאפשר GitOpsמצד שני, לפני Kubernetes אולי לא היה צריך GitOps, כי הדברים היו יותר פשוטים . . .אז אני סתם תוהה האם זו אבחנה שנראית לך מוצדקת, נכונה?(ירון) אני חושב שכולם מכירים את ה-Death-Star של Netflix, שמראה פשוט מיליארד שירותי microService שמדברים אחד עם השניוהם כתבו את Spinnaker, שזה כלי שהוא מזכיר . . . הוא מאוד מאפשר את הסיבוכיות שיכולה להגיע בדברים של Continuous Deliveryעם כל היופי והאלגנטיות של הכלי הזה, אני חושב שהוא בא לשרת משהו שאם לא צריך אותו, אז זה יהיה נחמד להיפטר ממנו.ושוב אני אצטט את Kelsey Hightower שאומר שהקסם והחידוש ב-Kubernetes זה שהתשתית מתוארת כדאטה, לא כקונפיגורציה (Configuration)זו לא סדרה ל צעדים אימפרטיביים (Imperative) שדרושים כדי שמכונת Linux תוכל להגיש קוד ב-Ruby - זה תמיד יהיה דאטה - זה תמיד יהיה קבצים ב-YAML שנשמרים ב-Database, והם אלה שמאפשרים את העלייה של Production.(רן) כן - וזה אולי אחד מהדברים שמאפשרים לעשות GitOps בצורה יחסית פשוטה, כי כל מה שצריך לעשות זה Commit לקובץ YAML - ולעשות Apply . . .(ירון) בהחלט(רן) טוב - אז תודה רבה, ירון, היה סופר-סופר מרתק. יש משהו שהיית רוצה עוד להגיד לפני שנסיים?(ירון) אז אני אשמח להגיד שאנחנו מגייסים - גם לצוות שלי וגם למגוון תפקידים ב-Solutoאם כל מה ששמעתם פה נשמע לכם מעניין, מבחינת החזון של החברה או מבחינת הדברים היותר Geek-יים - בואו, תתראיינו, תתקבלו . . . (רן) מעולה . . .(יונתן) אה, אפשר למסור ד”ש, רן?(רן) קדימה, נו . . . עם איזה שיר? רגע, שאני אכין את התקליטייה . . .(יונתן) שנכין בתקליטייה . . . אז למאזין אורי להב, ששט לו בדוגית בחופי הים התיכון . . . (רן) אורי - מתגעגעים אליך, חזור הביתה!טוב - אז תודה רבה לשניכם, ויאללה, נשתמע . . . להתראות.ובהצלחה ל-Reversim Summit 2021 . . . הקובץ נמצא כאן, האזנה נעימה ותודה רבה לעופר פורר על התמלול
Thomas und Daniel erzählen davon, in den 1980er Jahren mit den ersten Home-Computern aufzuwachsen.
Thomas und Daniel erzählen davon, in den 1980er Jahren mit den ersten Home-Computern aufzuwachsen.
An airhacks.fm conversation with Justin Lee (@evanchooly) about: C-64, the Run Magazine with source code, summer olympics - the joystick destroyer, coding "triangle with trigonometry" in Basic, computer were like science fiction, random access file in C-64 basic, IBM PCjr BASIC, writing American Football simulator, starting Turbo Pascal, learning Oberon and C, NAG and fortran, loosing a sub tree, the Forth programming language, starting Java on HP-UX machines, starting with JDK 1.0.2, the amazing Sun branding, Software Development Lifecycle - SDLC, writing software costs estimation in Java, 3D modelling in TCL/TK, working with TogetherJ, using vim professionally, starting with Eclipse and JBuilder, building systems for online grocery shopping in 1998, using jhtml with Dynamo ATG, building an own application server with own persistence, using the blaze rules engine, using Java Server Pages with Jasper compiler, JSP was a weekend project, JSPs could be sold SSR, working on Glassfish and Project Grizzly, implementing WebSocket in Java on application servers, using Comet communication style with Atmosphere, using GlassFish with grizzly for long polling, writing unit tests for WebSockets in a Chrome client, Tyrus took the Grizzly implementation as base, Dany Coward wrote a Web Socket book, SPDY and Bosh were the bases of HTTP/2, the sticky session Web Sockeet problem, using WebSockets for Java application servers clustering, starting at Squarespace, Squarespace used Java on the backed any MySQL / MongoDB, fronted was implemented in YUI (Yahoo UI), maintaining Morphia for MongoDB, joining Red Hat and working on quarkus, working on Quarkus MongoDB integration, Quarkus Kotlin integration, eventually and evancholy Justin Lee on twitter: @evanchooly, Justin's blog: https://www.antwerkz.com
An airhacks.fm conversation with David Delabassee (@delabassee) about: C-64, Commodore 128, Amiga 500, and Amiga 2000, Basic then assembler, developing a basic horse racing statistics application, saving the state to the tape, understanding Peeks and Pokes, Amiga 500 vs. Atari ST, extending Amiga 2000 with a PC board, starting to program Turbo Pascal on a PC, the 47 MB hard disk, a vectorized walking person in Turbo Pascal, the War Games movie, the acoustic coupler, the U.S Robotics modems, identifying modems by sound, writing a terminal application, learning how to learn, using Vax VMS at the university, a pigeon-based failsafe system, creating a word processor in C to write Safety Data Sheets, writing backend application for Motorola Unix running on Motorola Hardware, discovering Java applets in 1995, teletext and minitel, developing a web phone in 1997 in Personal Java, booting a phone in 15 minutes, building a TV set top box for Navio, starting at Sun Microsystems and Javasoft as pre-sales and a Java Ambassador, Java Developer Connection (JDC) and Duke Dollars, Java EE evangelist at Oracle, inspiring JavaOne conferences, spending time with Glassfish in the "field", working on EE4J and Java EE to Jakarta EE transition, the trigger of open sourcing the Java EE platform, moving to serverless organization at Oracle, FN project is used under the hood of Oracle Functions, joining the Java platform group, launching the Java Inside podcast, launching the inside.java website focussing on Java SE platform David Delabassee on twitter: @delabassee
An airhacks.fm conversation with Justin Fagnani (@justinfagnani) about: creating fireworks animations with Apple IIe, games were hard to get for Apple IIe, "hello, world" with Apple Basic, enjoying the un-productivity and making funk music, Basic, Turbo Pascal, Turbo C, Java and Python, starting with Java 0.9 and Applets, Microsoft introduced JScript (Visual J++) with major incompatibilities to Java, staring with Python and Django, Python over Ruby, studying an algorithm book for two weeks to pass the interview at Google, using FileMaker, starting at Google's HR department compensation planning system, creating the AppMaker during the "free" 20% Google time, AppMaker was shutdown in 2020, AppMaker is an low-code application builder, one-click deploy and one-click deploy, GWT and Java were heavily used at Google, using Java's Rhino to run JavaScript on the server, the AppMaker clone with Dart, writing parsers and Polymer Dart, Chrome supported Dart, leaving Dart before flutter, Angular Dart is very popular at the apps group at Google, wiz is the most popular web framework at google, joining the polymer team, html imports vs. JavaScript imports, CSS-modules and JSON-modules proposals, lit-html start to provide better tooling story for Polymer 3.0, lit-html vs. hyper-html, ES 6 template literals enable great performance for lit-html, Microsoft's fast framework was inspired by lit-html, lit-html source code fits on a slide, lit-html source size is close to 3kB, the first lit-html breaking change since 2017, the contractual obligation to support IE, lit-html vs. lit-element, lit-element offers a richer, reactive lifecycle, decreasing lock-in is lit's design philosophy, passing data between component trees, cross-DOM communication with Custom Events, Web Components conventions are micro stacks, less and less needs for a JavaScript framework, chrome is shipping with import maps, web platform - and the tooling is optional, polymer was not the component host, polymer is popular inside google, lit-html is growing fast at google, Chrome OS is using lit-element, Chrome Dev Tools is implemented with lit-html Justin Fagnani @justinfagnani, @polymer and @lit_html on twitter
Herinneringen aan de Kaai, wijsheden rond lesgeven en ruilhandel in wijn en porto. Bert Van Rillaer, die de EhB verliet om warmere oorden op te zoeken, komt mee zeveren. Wij proberen onze job veilig te stellen door Bert te overtuigen dat Portugal zo slecht nog niet is. Vermeld in de podcast: Rute '98 (Alles kan beter): https://www.youtube.com/watch?v=sx-tTMIByb8 Arduini: https://www.arduino.cc/ Circuit Playground: https://code.org/circuitplayground BBC micro:bit: https://www.microbit.org/ Turbo Pascal: https://en.wikipedia.org/wiki/Turbo_Pascal Isolab: (bestaat niet meer, denk ik) La Linea: https://www.youtube.com/watch?v=6iw_rdx11V0 Berts favoriete Portugese wijnen komen uit de Douro- en Alentejo-regio: https://en.wikipedia.org/wiki/Douro_DOC https://en.wikipedia.org/wiki/Alentejo_wine Outlander: https://www.imdb.com/title/tt3006802/ The Pillars of the Earth (Ken Follet): https://www.goodreads.com/book/show/5043.The_Pillars_of_the_Earth Kinderen en spraaktechnologie, niet altijd een goede combinatie: https://www.youtube.com/watch?v=r5p0gqCIEa8 Futurama: https://www.imdb.com/title/tt0149460 WandaVision: https://www.imdb.com/title/tt9140560/ Vragen, aanvullingen of opmerkingen: huiswerk@zinvolgezever.be. Je vindt ons ook op YouTube: https://www.youtube.com/channel/UCZ2QfheiZ-sVUVrBPSgPw8g --- Send in a voice message: https://anchor.fm/zinvol-gezever/message
An airhacks.fm conversation with Bert Jan Schrijver (@bjschrijver) about: C64, playing Paper Boy, winter games - the joystick destroyer, BASIC, print, sprites peek and poke, resilience patterns and fault tolerance motivated by a stronger brother, writing text based adventures in BASIC, programming Turbo Pascal on a 486, smoking computers, joining the demo scene and the 28k modem, generating samples - the SVG for music, staring with Java at the university, experimentation with Java Applets, enjoying static imports with Java 5, plasma with an Java Applet, flood prevention simulation in Java, building a text classification system in Java, the beginning of AI with Java, using Java Server Pages and Servlets at an insurance company, combining Groovy with EJB 3, starting OpenValue with 25 people, migration from Java EE servers to quarkus, Quarkus--the comeback of Java EE, WildFly Swarm and "I don't want your Thorntail" podcast episode, Guild42 Serverless Java #slideless presentation, GraalVM made Java appealing again in the server space, EJB pooling could solve lambda cold start problems, from developer the manager - and the end of plasmas, Bert's plasma in JavaScript: github.com/bertjan/html5-canvas-js-plasma, OpenValue is hiring, Bert Jan Schrijver on twitter: @bjschrijver and github.com/bertjan
An airhacks.fm conversation with Daniel Kec (@DanielKec) about: playing games on dell 386dx, playing Commander Keen, wolfenstein, golden axe, hexen, beautiful markup with microsoft frontpage, On the Internet, nobody knows you're a dog, Hot Metal Pro, Net Object Fusion, Frontpage, HTML editors, Adobe Pagemill, NetBeans and IntelliJ IDE, Turbo Pascal at high school, enjoying Transistor-transistor logic TTLs and IC, the problem with CMOS and static charge, transition from Turbo Pascal to Borland Delphi, private, university in prague, Kamenicky Encoding and codepage 895, starting to love Java after Visual Basic experiences, starting with JDK 1.6, xelphi and forte for Java, episode with Jaroslav Tulach, x-definition validation language for XML, the super senior developer, find a bug: Donald Knuth and TeX, writing plugins for Netbeans, inheriting the register of traffic accidents, using WebSphere with wizards and EJB 2.1, migrating to Eclipse and xdoclet, rational developer studio IDE, MDA as solution for generating superfluous artifacts, the great dash dispute, parkinson's law of triviality, transition from EJB 2.1 to EJB 3.0, analyzing logfiles with the R programming language, R runs on GraalVM, starting at Oracle at the Java Architecture for XML Binding (JAXB), Jersey, Helidon team, Daniel Kec on twitter: @DanielKec and on github: github.com/danielkec
As promised, here is the grass hat.You can find out more about Earthly here.We spend a little time talking about Nix OS the operating system you can roll back if you don't like a patch.Raise your hand if you remember learning computer science with Turbo Pascal.Maybe you didn't know, but discs aren't as slow as people think. Adam's recent episode is about upending common assumptions on IO performance. Shoutout to our Lifeboat badge winner of the week, Josh Smift, for answering the question: How to delete *.web files only if they exist.
As promised, here is the grass hat.You can find out more about Earthly here.We spend a little time talking about Nix OS the operating system you can roll back if you don't like a patch.Raise your hand if you remember learning computer science with Turbo Pascal.Maybe you didn't know, but discs aren't as slow as people think. Adam's recent episode is about upending common assumptions on IO performance. Shoutout to our Lifeboat badge winner of the week, Josh Smift, for answering the question: How to delete *.web files only if they exist.
An airhacks.fm conversation with Lukas Eder (@lukaseder) about: a Unisys 8086, don't break your dad's computer, playing with "format", starting with QBasic and 12 years, serial cable chat programs in QBasic, Turbo Pascal with 15, changing the font in the BIOS, starting CMS with PHP and MySQL, no transactions, no connection pools in PHP, the beginning with serverless and CGI, Java is not a website technology, Java static pages vs. PHP includes, enterprise PHP: Zend Framework, from PHP to Java, PHP 4 to PHP 5 migration and the assignment operator, enjoying Java 1.3, Ant vs. Maven 1, a reporting project for a telco company with Java and Hibernate, writing backends in SQL and frontends with XSLT, stateless, functional programming with XSQL and SQL, jooq manual was built with XSLT, apache Cocoon and XSLT, Servlets and Java Message System (JMS) with WebLogic, from Hibernate query builder to jooq in 2006, cascading interfaces which feel like SQL, everyone built a query builder, rewriting jooq - jooq2 in 2008, queryDSL - the abstraction across multiple query language, jooq only abstracts SQL, dynamic "where" clauses with criteria query, jooq stands for: j-object oriented query, jooq started with stored procedure support, SQLJ the preprocessor, PRO-C* -> the C preprocessor for Oracle to generate boring glue code, jooq 1 was a procedural query builder, jooq 2 DSL API looks like SQL and uses the query builder layer, the database first design, SQL is not composable, SQL: different syntax on different levels, 1000 lines of jooq code is not unusual, DSLContext - the starting point, commercial support for jooq is available, database migrations with jooq, opensource vs. commercial edition, dependency on products, saving costs with opensource, focus on Jakarta EE, Java EE, MicroProfile API vs. direct runtime dependencies, working with dynamic SQL and jooq, database vs. Java first Lukas Eder on twitter: @lukaseder
Nerds of Law 27 - Nerd vs Geek Heute gehen wir der Frage auf den Grund, was ein Nerd und was ein Geek ist. Wir diskutieren, wie es ist, als Nerd aufzuwachsen, und wie man vom Außenseiter zum Trendsetter wird
Today’s episode features Scott Hunter who is the PM director for the .NET team. We chat about the challenges that come with growing your scope, applying the lessons learned in startups and consulting to large corporations, and his early days working on BBS (bulletin board systems) for fun lead to meeting the people he’d need to know to grow his career.00:39 - Meet Scott Hunter, Director of Program Management for .NET01:46 – What does a director of program management do day to day?05:26 – How did Scott managed his transition to director of all of .NET from his previous role?08:41 – How did Scott get the role? Taking initiative to find the right place.12:31 – Growing scope and managing perceived identities, from ASP.NET to just .NET17:31 – Why team cultures differ and don’t align even when they ship in the same product19:14 – How did Scott learn and build the skills to make these transitions? Practicing integration in early startup days, consulting.22:47 – Most important lesson from previous managers: Don’t surround yourself with people like yourself and building a team with diverse opinions25:13 – Deciding between going with a new project or continuing along on a journey not complete28:00 – Accidentally attending Microsoft’s conference and joining Microsoft31:55 – Moving from dev to PM and learning communication skills33:45 – Becoming a manager and intentionally stopping himself from coding37:20 – How did Scott into computers? Typing programs into the Commodore PET he stole from his dad.38:35 – Scott’s history of working on Wildcat BBS to avoid forklift driving41:52 – Turbo Pascal and hanging at Anders Hejlsberg’s house and serendipity43:58 – Failing his first Microsoft interview, knowing what you want.45:36 – Trust your internal sense of when to act fast#MicrosoftCareers #CareersBehindTheCode #Director #ProgramMangement
Bei Netzwerk denken die meisten sofort an Facebook. Das Berliner Performancekollektiv Turbo Pascal dagegen interessiert sich für analoge Beziehungen. In seinem Projekt "Dichte Netze" in Dresden vernetzen sich Spielende und Publikum für einen Abend. Margret Schütz im Gespräch mit Janis El-Bira www.deutschlandfunkkultur.de, Rang I Hören bis: 19.01.2038 04:14 Direkter Link zur Audiodatei
* RSR's Display Program: Can auto-generate every page of every book ever written! No joke! Read on... * A Software Program to Inform Philosophical Discussion: The Real Science Radio hosts have fun describing Bob Enyart's software invention. Its stunning features make it a "software invention" rather than a typical example of "software development." Bob promises to resign his radio program of 25 years if he is not being truthful about what his program can do. For example, it displays the pages of books. All books. Software engineer Fred Williams discusses the source code published below with this RSR show summary, and the truncated version of Display.exe, below, which runs in your browser. Of course the program is not actually omniscient; but rather, as the guys list its many features, it merely appears to be omniscient, virtually. :) Previously Posted on TheologyOnline: Publicly disclosed on television June 2, 1998 and before. (We don't know if anyone else has ever invented this, so this post may help to answer that question.) Software Feature #1: I've written a software program that displays the code of OTHER software programs. You don't have to have the other program available, neither the source (obviously), nor even the executable code. You just run Display and it will show the source code of any other program. Software Feature #2: 12-6-09 My program also displays the pages of published books. Every book. And you don't have to have any such book available. The program itself displays the pages of any book. Software Feature #3: 12-7-09 My program also displays published texts, translated into other languages. Software Feature #4: 12-8-09 Display.exe presents a universal mathematical proof demonstrating that human creativity is not infinite but finite. Software Feature #5: 12-11-09 Display.exe will display the text on scrolls. Software Feature #6: 12-15-09 Yes, Display.exe will display sheet music. (A TOL'er called the radio studio, and I agreed to answer this here. I apologize that we've been too busy to keep up with this thread. On Jan. 1, 2010, we'll post to TOL either a typical output page from Display, or the program's own source code, depending upon interest.) Software Feature #7: 1-3-10 Photos & Captions: In response to Stripe who wrote, "looks like it'll produce just about anything you want it to... in text only form... " Thanks Stripe for weighing in on this. It will display not only the text of books, but also their photos (with captions), graphs, and charts. The startling implications of Display.exe are far beyond anything the Supreme Court may rule in their current intellectual property case. -Bob Enyart* Display.exe Source Code Public Class Form1 ....Dim n As Integer ....Dim HistoryWritten As Boolean ....Dim upperbound As Integer = 10000001 ....' Set binary array to needed length + 1 ....Dim MBit(upperbound) As Boolean ....Sub ZeroOutArray() ........For n = 0 To upperbound - 1 ............MBit(n) = 0 ........Next ....End Sub ....Sub Count() ........n = 0 ........Do ............If MBit(0) = False Then ................MBit(0) = True ................For n = 0 To 100000 ................Next ................DisplayArray() ............Else : HistoryWritten = True ................For n = 0 To upperbound - 1 ....................If MBit(n) = False Then ........................HistoryWritten = False ....................End If ................Next ................If HistoryWritten = False Then ....................n = 0 ....................MBit(n) = False ....................Label1.Visible = False ....................Do While MBit(n + 1) = True ........................n = n + 1 ........................MBit(n) = False ....................Loop ....................MBit(n + 1) = True ....................n = n + 1 ....................DisplayArray() ................End If ............End If ........Loop Until n = upperbound ....End Sub ....' History dump... world, that is. End Class Here's an example output page from Display.exe. By the way, the program doesn't have to start from the beginning, but it could start from any point, for example, the user could begin with this image and have the program run forward to the see the next images. Or, it could run backward. Either way.Replies To Comments: made over at the Display.exe thread at TheologyOnline.com...Granite: If I am not being honest, I will quit my daily radio show of 18 years running on the most powerful U.S. Christian station.csuguy: The source code is displayed in the program's native code, whether Lucid, C++, BASIC, Turbo Pascal, Java, PHP, Assembly, etc.AMR: Over the years we've used Patton Boggs (Clinton's lawyers) for patent work. Your cost estimates of course are for after the USPTO rejects your original application.noguru: my software displays the source code for ANY program, written in any language, whether no longer available, proprietary, etc. I doubt there's another such program.fool: fool, where could TOLers look to authenticate your challenge?AMR: There's no cat in 'the bag' AMR, but Display can show you the cat in the hatkmoney: "I don't think it's possible. This is some joke..." No joke. I've written the program, and yes, it makes a point.MR & aa: To assuranceagent (see also entire post)... Originally Posted by Bob Enyart Regarding MR's comment about Display.exe being perhaps a metaphor for open theism, the program is not a metaphor but a mathematical proof. But to the extent that philosophers or theologians could use it as an argument, assuranceagent has a point... An open theist... asked: "If by appearances, Display.exe will be more readily used as an argument for those who promote a settled future (as opposed to an open future), then why promote it?" I answered, because it is true. And acknowledging truth, regardless of how it cuts, brings us closer to the one who is Truth. -Bob * Functioning Truncated Display Program: Here is a functioning Display.exe program, although with its output truncated. With this version, you can see the program actually running, but you're only able to see it on a tiny screen with the size of the pixels greatly enlarged for demonstration purposes. This number makes a cross: 923237879. This number makes a happy face: 903347121. Please note: Max is actually 2147483647. * This Truncated Version: The functional though truncated version above of Display.exe is available for download from KGOV.com. It will run in a programmer's Virtual Basic software development environment. In this "lite" version, the "upperbound" constant is reduced from its value of 10000001 down to only 101 and as in the the demonstration version above, the size of the pixels is exaggerated. Display lite helps the user understand the method that the full program uses to demonstrate universally that human creativity is not infinite but finite.
* RSR's Display Program: Can auto-generate every page of every book ever written! No joke! Read on... * A Software Program to Inform Philosophical Discussion: The Real Science Radio hosts have fun describing Bob Enyart's software invention. Its stunning features make it a "software invention" rather than a typical example of "software development." Bob promises to resign his radio program of 25 years if he is not being truthful about what his program can do. For example, it displays the pages of books. All books. Software engineer Fred Williams discusses the source code published below with this RSR show summary, and the truncated version of Display.exe, below, which runs in your browser. Of course the program is not actually omniscient; but rather, as the guys list its many features, it merely appears to be omniscient, virtually. :) Previously Posted on TheologyOnline: Publicly disclosed on television June 2, 1998 and before. (We don't know if anyone else has ever invented this, so this post may help to answer that question.) Software Feature #1: I've written a software program that displays the code of OTHER software programs. You don't have to have the other program available, neither the source (obviously), nor even the executable code. You just run Display and it will show the source code of any other program. Software Feature #2: 12-6-09 My program also displays the pages of published books. Every book. And you don't have to have any such book available. The program itself displays the pages of any book. Software Feature #3: 12-7-09 My program also displays published texts, translated into other languages. Software Feature #4: 12-8-09 Display.exe presents a universal mathematical proof demonstrating that human creativity is not infinite but finite. Software Feature #5: 12-11-09 Display.exe will display the text on scrolls. Software Feature #6: 12-15-09 Yes, Display.exe will display sheet music. (A TOL'er called the radio studio, and I agreed to answer this here. I apologize that we've been too busy to keep up with this thread. On Jan. 1, 2010, we'll post to TOL either a typical output page from Display, or the program's own source code, depending upon interest.) Software Feature #7: 1-3-10 Photos & Captions: In response to Stripe who wrote, "looks like it'll produce just about anything you want it to... in text only form... " Thanks Stripe for weighing in on this. It will display not only the text of books, but also their photos (with captions), graphs, and charts. The startling implications of Display.exe are far beyond anything the Supreme Court may rule in their current intellectual property case. -Bob Enyart* Display.exe Source Code Public Class Form1 ....Dim n As Integer ....Dim HistoryWritten As Boolean ....Dim upperbound As Integer = 10000001 ....' Set binary array to needed length + 1 ....Dim MBit(upperbound) As Boolean ....Sub ZeroOutArray() ........For n = 0 To upperbound - 1 ............MBit(n) = 0 ........Next ....End Sub ....Sub Count() ........n = 0 ........Do ............If MBit(0) = False Then ................MBit(0) = True ................For n = 0 To 100000 ................Next ................DisplayArray() ............Else : HistoryWritten = True ................For n = 0 To upperbound - 1 ....................If MBit(n) = False Then ........................HistoryWritten = False ....................End If ................Next ................If HistoryWritten = False Then ....................n = 0 ....................MBit(n) = False ....................Label1.Visible = False ....................Do While MBit(n + 1) = True ........................n = n + 1 ........................MBit(n) = False ....................Loop ....................MBit(n + 1) = True ....................n = n + 1 ....................DisplayArray() ................End If ............End If ........Loop Until n = upperbound ....End Sub ....' History dump... world, that is. End Class Here's an example output page from Display.exe. By the way, the program doesn't have to start from the beginning, but it could start from any point, for example, the user could begin with this image and have the program run forward to the see the next images. Or, it could run backward. Either way.Replies To Comments: made over at the Display.exe thread at TheologyOnline.com...Granite: If I am not being honest, I will quit my daily radio show of 18 years running on the most powerful U.S. Christian station.csuguy: The source code is displayed in the program's native code, whether Lucid, C++, BASIC, Turbo Pascal, Java, PHP, Assembly, etc.AMR: Over the years we've used Patton Boggs (Clinton's lawyers) for patent work. Your cost estimates of course are for after the USPTO rejects your original application.noguru: my software displays the source code for ANY program, written in any language, whether no longer available, proprietary, etc. I doubt there's another such program.fool: fool, where could TOLers look to authenticate your challenge?AMR: There's no cat in 'the bag' AMR, but Display can show you the cat in the hatkmoney: "I don't think it's possible. This is some joke..." No joke. I've written the program, and yes, it makes a point.MR & aa: To assuranceagent (see also entire post)... Originally Posted by Bob Enyart Regarding MR's comment about Display.exe being perhaps a metaphor for open theism, the program is not a metaphor but a mathematical proof. But to the extent that philosophers or theologians could use it as an argument, assuranceagent has a point... An open theist... asked: "If by appearances, Display.exe will be more readily used as an argument for those who promote a settled future (as opposed to an open future), then why promote it?" I answered, because it is true. And acknowledging truth, regardless of how it cuts, brings us closer to the one who is Truth. -Bob * Functioning Truncated Display Program: Here is a functioning Display.exe program, although with its output truncated. With this version, you can see the program actually running, but you're only able to see it on a tiny screen with the size of the pixels greatly enlarged for demonstration purposes. This number makes a cross: 923237879. This number makes a happy face: 903347121. Please note: Max is actually 2147483647. * This Truncated Version: The functional though truncated version above of Display.exe is available for download from KGOV.com. It will run in a programmer's Virtual Basic software development environment. In this "lite" version, the "upperbound" constant is reduced from its value of 10000001 down to only 101 and as in the the demonstration version above, the size of the pixels is exaggerated. Display lite helps the user understand the method that the full program uses to demonstrate universally that human creativity is not infinite but finite.
Enggak hanya membuat PhantomJS, Ariya Hidayat juga berhasil mengantarkan dua perusahaan di Silicon Valley sampai dibeli perusahaan besar. Dulu, Ariya pernah bergabung dengan Sencha Inc. dan Shape Security. Sencha Inc. adalah perusahaan software penyedia framework JavaScript yang open-source. Sedangkan Shape Security adalah perusahaan teknologi penyedia layanan keamanan cyber bagi perusahaan kelas dunia. Keduanya adalah perusahaan teknologi di Silicon Valley. Di Sencha Inc. Ariya berperan sebagai Engineering Director. Di sana ia berjasa dalam membangun perusahaan ini sampai akhirnya dibeli oleh IDERA Inc. yang berada di bawah naungan Embarcadero, perusahaan pencipta Turbo Pascal, Dephi, dan C++ Builder. Sebelum Secha Inc. dibeli, Ariya sempat dihubungi oleh Co-Founder Shape Security dan memintanya bergabung. Di perusahaan ini, ia berperan sebagai VP of Engineering yang memimpin tim dengan 50 engineer di dalamnya. Kurang dari dua tahun, Ariya beserta timnya berhasil meluncurkan sebuah produk. Setahun kemudian, penjualan produk tersebut melesat. Lalu setahun setelahnya, Shape Security jadi bernilai setara dengan Unicorn. Perusahaan ini pun kemudian dibeli oleh F5 Networks pada beberapa bulan yang lalu dengan nilai seharga 1 miliar dolar. Saat ini, Ariya tengah sibuk memajukan teknologi di Indonesia dengan berbagai cara. Salah satunya dengan membangun Deep Tech Foundation bersama teman-teman lainnya. Ikut terlibat dalam mengembangkan, memajukan, dan mendobrak teknologi di Indonesia adalah hal yang penting dilakukan bagi Ariya. Tujuannya agar Indonesia enggak hanya menjadi konsumen, tapi juga menjadi penggerak dalam pasar teknologi. Yuk, dengar cerita pengalaman dan pelajaran lainnya yang Ariya Hidayat dapatkan sampai bisa mengantar 2 perusahaan teknologi di Silicon Valley diakuisisi. Versi video: https://www.youtube.com/watch?v=ta827eDRSSQ Donasi: https://karyakarsa.com/rizafahmi
An airhacks.fm conversation with Bastian Sperrhacke (@deratzmann) about: 80286, qbasic,CLI, Turbo Pascal, if-thens and "Who Wants to Be a Millionaire?", inhouse outsourcing with sister, playing Prince of Persia, MS DOS games, memory management with autoexec.bat and config.sys, taking a Macromedia Flash class ...at army, programming a beer shop in a JavaScript course by mistake, "JavaScript is dead" - in 2001, programming Java for Windows PDAs, Sharp Zaurus ran Linux, searching stuff in adventure parks with PDAs, chats and XMPP, chasing hidden boxes, Java ME is not MicroProfile, developing digital TV on Nokia phones with ads over DVB-T, developing WAP applications, mobile portals, ringtones and games, Nokia Communicator, WAP - "Wait And Pay", developing web sites with Struts and JSPs, using JDBC from Struts actions to access the database, Java EE best practices training by OOSE, refactoring with GlassFish 2.1 and 3.1 and EJB 3, working since 2013 for Otto - the German amazon, home made persistence layers before Hibernate, selling insurances instead of ORM mappers, starting with microservices in cross-functional teams, using Payara for e-commerce, running Payara, Jakarta EE on AWS, seamless migration to AWS, implementing additional services with Payara, Java EE and AWS, buying a barista, the largest ThinWARs are 500kB, swagger UI is larger than the business logic, 3-5 seconds boot times, layered docker deployments, 700MB base layer, 5-10 cloud deployments a day, using AWS Fargate, business driven MicroProfile metrics, experimenting with OpenLiberty, WildFly 19 comes with MicroProfile support, Quarkus is the nextgen application server, migrating Boundary Control Entity applications to Quarkus, the push gateway blogpost / application, replacing Stateless EJBs with CDI Stereotypes, Quarkus vs. WildFly performance comparison, Quarkus saves 50% of RAM in JVM mode, drinking a coffee together at JavaONE, coding technical lead, casual gaming, building bases with StarCraft, the a+ team Bastian Sperrhacke on twitter: @deratzmann, interview with Bastian
Welcome to the History of Computing Podcast, where we explore the history of information technology. Because understanding the past prepares us to innovate (and sometimes cope with) the future! Today we're going to look at an often forgotten period in the history of computers. The world before DOS. I've been putting off telling the story of CP/M. But it's time. Picture this: It's 1974. It's the end of the Watergate scandal. The oil crisis. The energy crisis. Stephen King's first book Carrie is released. The Dolphins demolish my Minnesota Vikings 24-7 in the Super Bowl. Patty Hearst is kidnapped. The Oakland As win the World Series. Muhammad Ali pops George Forman in the grill to win the Heavyweight title. Charles de Gaulle opens in Paris. The Terracotta Army is discovered in China. And in one of the most telling shifts that we were moving from the 60s into the mid-70s, the Volkswagen Golf replaces the Beetle. I mean, the Hippies shifted to Paul Anka, Paper Lace, and John Denver. The world was settling down. And the world was getting ready for something to happen. A lot of people might not have known it yet, but the Intel 8080 series of chips was about to change the world. Gary Kildall could see it. He'd bought the first commercial microprocessor, the Intel 4004 when it came out in 1971. He'd been enamored and consulted with Intel. He finished his doctorate in computer science and went tot he Naval Postgraduate School in Monterrey to teach and developed Kildall's Method, to optimize compilers. But then he met the 8080 chip. The Intel Intellec-8 was an early computer that he wanted to get an operating system running on. He'd written PL/M or the Programming Language for Microcomputers and he would write the CP/M operating system, short for Control Program/Monitor, loosely based on TOPS-10, the OS that ran on his DECsystem-10 mainframe. He would license PL/M through Intel but operating systems weren't really a thing just yet. By 1977, personal computers were on the rise and he would take it to market though calling the company Digital Research, Inc. His wife Dorothy ran the company. And they would go into a nice rise in sales. 250,000 licenses in 3 years. This was the first time consumers could interact with computer hardware in a standardized fashion across multiple systems. They would port the code to the Z80 processors, people would run CP/M on Apple Its, Altair's, IMSaI, Kaypro, Epson, Osbourne, Commodore and even the trash 80, or TRS-80. The world was hectic and not that standard, but there were really 3 main chips so the software actually ran on 3,000 models during an explosion in personal computer hobbyists. CP/M quickly rose and became the top operating system on the market. We would get WordStar, dBase, VisiCalc, MultiPlan, SuperCalc, Delphi, and Turbo Pascal for the office. And for fun, we'd get Colossal Cave Adventure, Gorillas, and Zork. It bootstrapped from floppy disks. They made $5 million bucks in 1981. Almost like cocoaine money at the time. Gary got a private airplane. And John Opel from IBM called. Bill Gates told him to. IBM wanted to buy the rights to CP/M. Digital Research and IBM couldn't come to terms. And this is where it gets tricky. IBM was going to make CP/M the standard operating system for the IBM PC. Microsoft jumped on the opportunity and found a tool called 86-DOS from a company called Seattle Computer Products. The cool thing there is that used the CP/M Api and so would be easy to have compatible software. Paul Allen worked with them to license the software then compiled it for the IBM. This was the first MS DOS and became the standard, branded as PC DOS for IBM. Later, Kildall agreed to sell CP/M for $240 on the IBM PCs. The problem was that PC DOS came in at $40. If you knew nothing about operating systems, which would you buy? And so even though it had compatibility with the CP/M API, PC DOS really became the standard. So much so that Digital Research would clone the Microsoft DOS and release their own DR DOS. Kildall would later describe Bill Gates using the following quote: "He is divisive. He is manipulative. He is a user. He has taken much from me and the industry.” While Kildall considered DOS theft, he was told not to sue because the laws simply weren't yet clear. At first though, it didn't seem to hurt. Digital Research continued to grow. By 1983 computers were booming. Digital Research would hit $45 million in sales. They had gone from just Gary to 530 employees by then. Gangbusters. Although they did notice that they missed the mark on the 8088 chips from Intel and even with massive rises in sales had lost market share to Unix System V and all the variants that would come from that. CP/M would add DOS emulation. But sales began to slip. The IBM 5150 and subsequent machines just took over the market. And CP/M, once a dominant player, would be left behind. Gary would move more into research and development but by 1985 resigned as the CEO of Digital Research, in a year where they laid off 200 employees. He helped start a show called the Computer Chronicles in 1983. It has been something I've been watching a lot recently, researching these episodes and it's awesome! He was a kinda and wicked smart man. Even to people who had screwed him over. As many would after them, Digital Research went into long-term legal drama, involving the US Department of Justice. But none of that saved them. And it wouldn't save any of the other companies that went there either. Digital Research would sell to Novell for $80 million in 1991 and various parts of the intellectual property would live on with compilers, interpreters, and DR DOS living on. For example, as Caldera OpenDOS. But CP/M itself would be done. Kildall would die in a bar in Monterey, California in 1994. One of the pioneers of the personal computer market. From CP/M to disk buffering the data structure that made the CD, he was all over the place in personal computers. And CP/M was the gold standard of operating systems for a few years. One of the reasons I put this episode off is because I didn't know how I would end it. Like, what's the story here. I think it's mostly that I've heard it said that he could have been Bill Gates. I think that's a drastic oversimplification. CP/M could have been the operating system on the PC. But a lot of other things could have happened as well. He was wealthy, just not Bill Gates level wealthy. And rather than go into a downward spiral over what we don't have, maybe we should all be happy with what we have. And much of his technology survived for decades to come. So he left behind a family and a legacy. In uncertain times, focus on the good and do well with it. And thank you for being you. And for tuning in to this episode of the History of Computing Podcast.
An airhacks.fm conversation with Tomasz Nurkiewicz (@tnurkiewicz) about: getting a 486 with 8 MB of RAM, 324 MB large hard drive with 12, discovering the "bat", the logo programming language, the Settlers real time strategy game, Wolfenstein 3D, Windows 3.11 was not a real operating system, the "exe" and the "com" files, the accidental discovery of bubble sort and recursion in Turbo Pascal with 17, developing a file browser with Turbo Pascal, the "hello, world" in chapter 5 of the Haskell book, "hello, world" is a very complex problem in Haskell, there are programming languages optimized for "hello, world", porting a 3d tetris in C++, enjoying the Breakout game, Arkanoid is based on breakout idea, programming the whole vacations straight a Tetris 3D-like game, using single threaded, voluntary preemption in game development, discovering coroutines, implementing a AI-like solution, starting with Java 1.4, enjoying the university time, building a logo compiler as master thesis, building a desktop, RMI-based, chat, gathering the "Sun Certified ..." certificates, Sun Java Programmer certification was the hardest, Sun Java Developer was the most rewarding, finding the longest palindrome, ehcache is a palindrome, most naive "palindrome finding" algorithms do work good enough for human readable text, getting a multi-month task done with 3 lines of code, compiling and decompiling (with JD) source code for codebase comparison, a session about AspectJ, the Project Voldemort database initiated by LinkedIn, gathering StackOverflow reputation and speaking at conferences as hobby, joining a Java startup in Norway, working on allegro ecommerce platform, allegro is #2 in Europe, breaking up the PHP monolith into microservices, 800 reasonable microservices in production, inviting Eric Evans to allegro to help with the Bounded Context, deploying the Envoy service mesh for greater visibility, accidental creation of an identical slide ("Recipe For Success"), you don't need reactive programming if you are not netflix or do not serve tens of thousands requests per second, paying the price of maintainability and complexity, don't use the shiny tools, if you don't have to, the free Logo for Mac: ACSLogo, Tomasz Nurkiewicz on twitter: @tnurkiewicz, on github: github.com/nurkiewicz and Tomasz blog: www.nurkiewicz.com
Subscribe to airhacks.fm podcast via: spotify| iTunes| RSS An airhacks.fm conversation with Niklas Heidloff (@nheidloff) about: Changing the font color with Basic on C64, playing Frogger, serious programming with Turbo Pascal on PC 80286, developing a shooter UFO game, writing a school magazine with MS Word, Graphical User Interfaces with Turbo Pascal, studying Computer Science in Paderborn, 25 years ago everything was already developed, Thomas J. Watson: 'I think there is a world market for about five computers', collaboration technologies at the university, IBM Notes, productive development with IBM Notes Domino, working with a startup and the Lotus Workflow product, the very first Java User Interface for the Workflow tool, startup was acquired by IBM, the 60% more paycheque, Lotus Notes was one of the first NoSQL databases, CouchDB is based on Lotus Notes ideas, the out-of-the-box experience of Lotus Domino was great, also OpenShift comes with great user experience, Lotus Notes had good replication capabilities, Java is is a lightweight and clean programming language, Applets were too buggy, ProcessWare became Lotus Workflow, growing without a reason, leading the frontend team for WebSphere Workflow, the interesting Visual Age for Java IDE, IBM Alphaworks and DeveloperWorks, Jikes - the fast Java Compiler, drawing boxes is not a exciting as developing software, growing the Lotus Notes community, openntf.org, learning from Eclipse and Apache, Lotus Notes business was sold to HCL, the RedHat opensource model, moving from Lotus Notes to Cloud Architectures, joining the IBM Emerging Technologies Organization and the Developer Outreach "Cloud Native" Team, building samples and traveling to international conferences, the Java Cloud Native Starter, the one end-to-end enterprise Java Cloud Native application, Kubernetes, OpenShift, Docker, Maven, MicroProfile, Kiali, Quarkus, installation scripts, vue.js and traffic routing with istio, the overlap between MicroProfile and Istio, the article by Emily Jiang, MicroProfile, NodeJS vs. MicroProfile, the NodeJS innovation, Niklas Heidloff on twitter: @nheidloff, Niklas' blog: heidloff.net, Niklas on github: https://github.com/nheidloff
An airhacks.fm conversation with Michael Bolz (@onemibo ) about: The first line of Turbo Pascal in 1992, 286 Compaq with a Turbo button, writing an installer for friends, C64 vs. PC, Jump and Run without jumping, writing some HTML code with DreamWeaver, What You See is NOT what you get, studying at the University of Applied Sciences in Karlsruhe, building web based applications with Struts, Java is easier to learn than C/C++, starting with "public static void main", then managing students with Java, writing UI tools in Swing / AWT for applying patches in CMS, JSF vs. Struts, the steinbeis foundation system migration from EJB 2.1 to EJB 3.1 in 2008, EJB 2.1 required code generation with xdoclet - and EJB 3.1 was nice, Heidelberg is nicer than Karlsruhe, the JAX 2012 meeting with JMS expert Ruediger zu Dohna, simplifications with JMS 2.X, copying museum code from the internet, copy and paste oriented programming, working for SAP, opensource at SAP, starting Apache Olingo, the ODATA specification for accessing backends, backend for frontends, ODATA is queryable database, ODATA exposes CRUD+ operations as standardised REST interface, Olingo is ODATA implementation for Java, Olingo is a raccoon, Olingo team started with 4 developers, ODATA v4 is an OASIS standard, ODATA v4 is mostly based on JSON, 2 developers are currently maintaining Olingo, JPA extension only exists for the Olingo v2 and not v4, most SAP services are available as ODATA endpoints, SAP's UI5 components can be also bound to ODATA, SAP UI5 widgets are also available as SAP ui5 WebComponents, MaxDB, teaching ABAP developers Java, nightly conversations about the R3 VM, in ThinWARs there is nothing to scan, removing unwanted dependencies is a good idea, Vulnerability Assessment Tool (Vulas) by SAP research, Vulas is going to be donated to Eclipse Foundation, Vulas scans transitive dependencies as well as the source code of the dependencies, SAP runs a lot of Java apps internally, Olingo comprises two parts - the metadata and the execution part, Olingo v2 comes with JPA extension and a Servlet as entry point, Microsoft contributed the Olingo client, Java Annotation extension for Apache Olingo V2, Olingo is open for contributions, it is a good idea to discuss new features on the mailing list first, new Olingo features must be backward compatible, this podcast episode was triggered by 66th airhacks.tv Q&A, Michael Bolz on twitter: @onemibo
An airhacks.fm conversation with Ondrej Chaloupka (@_chalda) about: RPG character generators with Turbo Pascal, Delphi and Visual Basic. D&D, Pentium 100 and Atari 500 ST, the joy of programming, the object oriented paradigm with Java 1.5 at university, warehouse software with JBoss 5 and enterprise Java, the first line of Java code was "public static void main", Java is not the ideal language to start programming with, building Swing apps at the University of Brno, studying computer science was hard, computer theory at the university is actually useful, design pattern overuse is an enterprise Java disease, some best practices move to Java EE platform - there is not need to solve the already solved problems, internship in Brazil with PHP and JQuery in 2009, the main problem of early Java EE was slow deployments, starting at RedHat as quality engineer for JBoss AS 7, quality insurance is a great way of on-boarding, starting to work on transactions, most PHP applications were built with "auto commit" transactions, transactions are convenient, enhancing code coverage for the transaction manager, fixing own bugs filed as quality engineer, starting as narayana developer, narayana, arjuna and JBoss Transaction Manager are the same bits, migrating narayana to MicroProfile Long Running Action (LRA), building transactional file system JCA connectorz, the narayana bootstrap with XML (timeout, implementation, recovery, transaction log), transaction manager and transaction recovery manager are the key parts, the transaction recovery manager is needed to remember what the server did, XID vs. Global ID, transaction context is stored in a ThreadLocal, joining transactions with JPA EntityManager, UnitOfWork in EntityManager, JDBC and XA transactions, a XA JDBC driver has to be exposed to the TransactionManager, a local transaction can be directly managed by the EntityManager, the XA / 2PC (two phase commit) protocol in detail, EntityManager: transactions and flushing, XA optimizations, Quarkus and Narayana, storing transaction logs in a central database, @Stateless, @Transactional and UserTransaction, code simplification with CDI and EJB, premature transaction optimisation is the root of some evil, starting transactions at the boundary layer, slower performance without transactions, in business applications with some state you will always need something like local transaction, thinking differently with NoSQL, Dr. Martin Kleppmann (@martinkl) transactions, challenges with microservices and transactions. Ondrej Chaloupka on twitter: @_chalda, and the JBoss Trasactions, Narayana, Arjuna blog
An airhacks.fm conversation with Emmanuel Bernard (@emmanuelbernard) about: Amstrad PC 1512, the first PC computer ever made by Amstrad, two floppies are better than a hard drive, deleting double dots, C/PM OS, BIOS as cheating detection, creating snake game in BASIC, playing with Turbo Pascal, from GO TOs over loops to procedures, objects, aspects to functional programming, exploring Mandrake Linux, Tibco Messaging and C++, killing yourself with casting, the C discipline checker - an enforced linter, 120 errors caused by Coke break, no version control -- no time machine, starting with Java 1.2, replacing buttons with images in Swing / AWT, memory leaks in Java UI, creating ASP websites for fnac, building shopping cart with VB, going back with Visual Basic debugger, exploring Java as C# alternative, WebSphere vs. WebLogic, WebLogic was the JBoss of early 2000's, Apache Excalibur container, editing TopLink files with Eclipse IDE, replacing TopLink with early Hibernate, providing Hibernate support, the Rational Unified Process Workbench, hacking the organization is important, the gradient from hacking to politics, JOnAS was big in France, translating Hibernate documentation, patching Hibernate via CVS and email, Gavin King, Oracle and annotations as XML replacement, xdoclet was a great EJB annotation PoC, Cedric Beust created XDoclet, early Apache Geronimo participation, a French engineer will only tell you what you can do better, XML mapping with deeply nested annotations as prototype, EJB 3 specification comprised the component model and the persistence, Eclipse IDE was late with annotation support, working on EntityManager API with Bill Burke, joining forces with Java Data Objects (JDO) to participate on JPA, switching from fnac to JBoss, the first day at JBoss, Gaving King and Christian Bauer were Hibernate consultants, Steve Ebersole worked on Hibernate Core and Max Andersen on Eclipse tooling, Gavin King implemented an early bean validation prototype and Emmanuel took it over, contributing to a mature opensource project is really hard, Google App Engine wanted to use Hibernate as persistence backend, then google decided to use datanucleus.org, Book Driven Development is better than Conference Driven Development, Emmanuel started OGM - the Object Grid Mapper, in NoSQL space the model is simpler, JSON-P or JSON-B can be used as replacement for JPA entities, JDBC is hard to use what explains the success of ORM products, RedHat acquired JBoss, the switch from 200 employee company to 2000 employees company, developer is king at RedHat, RedHat acquired JBoss right after the introduction of JPA, becoming an architect, debezium was started by Randall Hauch then continued by Gunnar Morling, creating architecture slides with Google Docs, throughput driven optimizations, with containers throughput becomes less important, Java was designed for throughput and not memory efficiency and startup time, openJDK team, middleware team at Redhat had conversations about the future of Java on containers, Kubernetes is your cluster manager, WildFly is the flagship and the integration point, Sanne Grinovero was behind optimizations, Java's metaspace was too high, Java is a highly dynamic environment and therefore hard to optimize, the Excelsior JET VM, GCJ, Project Maxwell, GraalVM and the compiler is written in Java, WildFly Swarm became Thorntail and was an attempt to make the runtime smaller, Java's memory usage is the real problem, Quarkus came with the idea to make all the optimization at build time, not runtime, Emmanuel started Quarkus with Jason Greene and Bob McWhirter, the very first line of Quarkus code was written in a pub, the Quarkus project name was Shamrock what was the name of the pub, 3 months time for a PoC, hibernate, CDI, JAX-RS and JDBC drivers had to be optimized for the MVP, June 2018 was the very beginning of Quarkus, the shamrock pub is located in Australia, docker containers are immutable and the WAR deployment does not fit into this model, ThornTail's hollow JARs separate the business logic from the architecture, one of the Quarkus inspirations is the Play framework, Hibernate Panache got the idea from Play persistence, wad.sh watches changes and redeploys WARs on-the-fly, QuarkEE makes Quarkus look like a Java EE application, Quarkus on GraalVM is the perfect storm, Jakarta EE is a good way to reset Java EE expectations, the j4k conference, Emmanuel Bernard on twitter: @emmanuelbernard, Emannuel's website: https://emmanuelbernard.com
An airhacks.fm conversation with Matthias Reining (@MatthiasReining) about: Power Basic is not QBasic and was comparable with Turbo Pascal, game high score manipulation as programming motivation, C 64 was the first computer encounter, writing a "Jump and Run" game in Power Basic, Power Basic IDE as Christmas present, the menu bar fascination, using GW-Basic at high school, call by value vs. call by reference in Power Basic and Turbo Pascal, the Comal programming language, learning C, the University of Wuerzburg, learning Visual C++ and object oriented programming at university, C over C++, learning Java during internship at Nobiscum, writing a Java frontend with AWT for CVS as proof of concept, renaming com.sun.swing to javax.swing, switching to Lotus Notes as consultant, improving Lotus Notes user interface with Java, accessing Lotus Notes with JDBC, CouchDB the Lotus Notes "successor" created by Damien Katz - a former Lotus Notes developer, Lotus Notes the NoSQL database before the popularity of NoSQL, Transact-SQL, PL/SQL and back to Java, JSPs, Servlets, Tomcat and Apache Struts, from Java back to Pearl, the strategy of spending as much time as possible in a single project, writing fronted code with "this and that" or ES 5-the ancient JavaScript, the Java EE 5 fascination, xdoclet code generation for early EJB versions was slow, annotation-based programming with Java EE 5 improved the productivity, building a freelancer portal with Java EE 5 as proof of concept, a Java EE workshop in 2011, learning politics in Java insurance projects with "C-structs" as design pattern, enjoying PowerPoint time, founding a startup with Java EE 8 / Jakarta EE 8 and MicroProfile as technology choice, WildFly and Keycloak are the perfect technologies for a startup, focus on the business and not the technology, considering OpenLiberty and Quarkus as migration target caused by slow support of MicroProfile APIs by WildFly, saving memory with Quarkus, making WARs thinner by moving to MicroProfile JWT from proprietary Keycloak libraries, building the heart of an insurance company - an insurance platform, cloud-ready and private clouds are a common deployment model, migration from COBOL systems to tech11 insurance platform, team of 8 people is incredibly productive, it is hard to find good developers in Germany, hiring pragmatic developers from Afrika with the "ThinWAR" mindset, the "airhacks stack", polyglot programming is chaos, using Java EE 8 as the baseline, all other dependencies require permission, an average tech11 ThinWAR is a few hundreds kB, code snippets from 2005 gave Java EE a bad name, implement whatever you can today and care about potential problems tomorrow, the time to first commit has to be as low as possible, projects and products require different approaches, the "getting things done" developer, long-term maintenance is key to product success, every company has the right technology at certain time, Java EE is not the only "right" technology, projects are also barely dependent on Java EE, tech11 does not sell technology, tech11 sells solutions, using plain WebStandards with WebComponents, ES 6 in the frontend, Custom Elements looks like ReactJS, lit-html is one of the few dependencies in frontend, tech11 started with hyperHTML, then migrated to lit-html, open-wc comes with lots of examples with LitElement what is not necessary, using Parcel for packaging without any transpiling, rollup.js is great for packaging, Jenkins transpiles for older browsers, on developer machines not even npm is necessary, airhacks.io workshop about WebComponents: webcomponents.training, tech11 uses a BPM engine to manage processes, tarifs claims, policies are the names of microservices (ThinWARs), the episode #36 with Markus Kett mentions the JCon keynote, Matthias Reining on twitter: @MatthiasReiningand his startup: https://tech11.com
Hepiska Franatagola atau yang biasa dipanggil Ego saat ini bekerja di Pomona sebagai Senior Software Engineer yang juga adalah lulusan coding bootcamp HACKTIV8. Bersama beberapa alumni HACKTIV8 juga yang saat ini bekerja di Pomona, salah satunya Shabrina. Pengalaman pertama berkomputer-ria dirasakan Ego ketika duduk di bangku SMA. Pertama kali Ego tertarik menggunakan aplikasi spreadsheet hingga mendorongnya untuk mengikuti olimpiade komputer. Bahasa pertamanya adalah Turbo Pascal yang akhirnya Ego menemukan passion di pemrograman. Akan tetapi 'takdir' berkata lain sehingga Ego akhirnya memutuskan untuk masuk ke jurusan Teknik Nuklir di Universitas Gadjah Mada. Meski demikian passion di pemrograman tidaklah padam. Setelah itu kemudian Ego memutuskan melanjutkan pendidikan ke S2 dan sekaligus bekerja di Mandiri sebagai Management Trainee selama kurang lebih 1.5 tahun. Tidak fokus dengan tesisnya yang tidak kunjung selesai, akhirnya Ego memutuskan meninggalkan pekerjaannya dan fokus menyelesaikan studinya. Ia merasa masih ada yang kurang dari kemampuan pemrograman yang dimiliki. Selama kuliah sosok yang mengidolai sosok Garindra Prahandono sedikit banyak sudah mempelajari pemrograman di sisi klien dengan membuat aplikasi desktop. Dan saat bekerja sudah belajar tentang database. Namun ia merasa butuh belajar penghubung antara database dengan klien, hingga akhirnya memutuskan mengikuti coding bootcamp di 2017. Tips Untuk Developer Menemukan motivasi yang tepat Ikut bootcamp untuk menemukan teman, jaringan, dan kepastian karir Mulai belajar bahasa pemrograman dengan JavaScript Link Penting Medium Hepiska Franatagola Podcast Filosofi Kode Atomic Design Pattern Grit, Angela Duckworth Svelte Garindra Prahandono, CTO SaleStock Indonesia Python GraphQL Apollo GraphQL Diky Arga More info: ceritanyadeveloper.com/hepiska-franatagola
PASCAL was designed in 1969 by the Swiss computer scientist Niklaus Wirth and released in 1970, the same year Beneath the Planet of the Apes, Patton, and Love Story was released. The Beatles released Let It Be, Three Dog Night was ruling the airwaves with Mama Told Me Not To Come, and you could buy Pong and Simon Says for home. Wirth had been a PhD student at Berkeley in the early 1960s, at the same time Ken Thompson, co-inventor of Unix and author of the Go programming language was in school there. It's not uncommon for a language to kick around for a decade or more gathering steam, but PASCAL quickly caught on. In 1983, PASCAL got legit and was standardized, in ISO 7185. The next year Wirth would win the 1984 Turing Award. Perhaps he listened to When Doves Cry when he heard. Or maybe he watched Beverly Hills Cop, Indiana Jones, Gremlines, Red Dawn, The Karate Kid, Ghostbusters, or Terminator on his flight home. Actually, probably not. PASCAL is named after Blaise Pascal, the French Philosopher and Mathemetician. As with many programmers, PASCAL built THE WORLD'S FIRST FULLY FUNCTIONAL MECHANICAL CALCULATOR because he was lazy and his dad made him do too many calculations to help pay his bills. 400 years later, we still need calculators here and there, to help us with our bills. As with many natural scientists of the time, Blaise Pascal contributed to science and math in a variety of ways: PASCAL'S LAW IN HYDROSTATICS PASCAL'S THEOREM TO THE EMERGING FIELD OF PROJECTIVE GEOMETRY IMPORTANT WORK on ATMOSPHERIC PRESSURE AND VACUUM including that REDISCOVERing THAT ATMOSPHERIC PRESSURE DECREASES WITH HEIGHT A pioneer in THE THEORY OF PROBABILITY While Indian and Chinese mathematicians had been using it for centuries, PASCAL POPULARIZED THE PASCAL'S TRIANGLE and was credited with providing PASCAL's Identity As with many in the 1600s he was deeply religious and dedicated the later part of his life to religious writings including Pensees, which helped shape the French Classical Period. Perhaps he wrote it while listening to Bonini or watching The History of Sir Francis Drake The PASCAL programming language was built to teach students to program, but as with many tools students learn on, it grew in popularity as those students graduated from college throughout the 1970s and 1980s. I learned PASCAL in high school computer science in 1992. Yes, Kris Kross was making you Jump and Billy Ray Cyrus was singing Achy Breaky Heart the same year his daughter was born. I learned my first if, then, else, case, and while statements in PASCAL. PASCAL is a procedural programming language that supports structured data structures and structured programming.At the time I would write programs on notebook paper and type them in next time I had a chance to play with a computer. I also learned enumerations, pointers, type definitions, and sets. PASCAL also gave me my first exposure to integers, real numbers, chars, and booleans. I can still remember writing the word program at the top of a piece of paper, followed by a word to describe the program I was about to write. Then writing begin and end. Never forgetting the period after the end of course. The structures were simple. Instead of echo you would simply use the word write to write text to the screen, followed by hello world in parenthesis wrapped in single quotes. After all, there are special characters if you use a comma and an exclamation point in hello word. I also clearly remember wrapping my comments in {} because if you didn't comment what you did it was assumed you stole your code from Byte managize. I also remember making my first procedure and how there was a difference between procedures and functions. The code was simple and readable. Later I would use AmigaPascal and hate life. PASCAL eventually branched out into a number of versions including Visual PASCAL, Instant PASCAL, and Turbo PASCAL. There are still live variants including the freepascal compiler available at freepascal.org. PASCAL was the dominant language used in the early days of both Apple and Microsoft. So much so that most of the original Apple software was written in PASCAL, including Desk Accessories, which would later become Extensions. Perhaps the first awesome computer was the Apple II, where PASCAL was all over the place. Because developers knew PASCAL, it ended up being the main high-level language for the Lisa and then the Mac. In fact, some of the original Mac OS was hand-translated to assembly language from PASCAL. PASCAL wasn't just for parts of the operating system. It was also used for a number of popular early programs, including Photoshop 1. PASCAL became object-oriented first with Lisa Pascal, Classcal then with Object PASCAL in 1985. That year Apple released MacApp, which was an object oriented API for the classic Mac Operating system. Apple stuck with Object PASCAL until the beginning of the end of mainline PASCAL in 1991, when it transitioned to C++ for System 7. MacApp would go on to burn a fiery death when Apple acquired NeXT. Perhaps it was due to Terminator 2 being released that year and developers figured things had gone full circle. Or maybe it was because REM caused them to Lose Their Religion. PASCAL wasn't just for Apple. Universities all over the world were using PASCAL, including the University of California San Diego, which introduced UCSD Pascal, which was a branch of Pascal-P2. UCSD p-System was one of three operating systems you could run on the original IBM Personal Computer. Microsoft would then implement the Object Pascal compiler, which caught on with developers that wanted to get more than what BASIC offered. Around this time, people were actually making real money and BORLAND released Turbo Pascal, making it cheap to grab big marketshare. Object PASCAL also begat Delphi, still used to write programs by people who refuse to change today. Wirth himself was fascinating. He not only wrote The Pascal User Manual and Report but also went on to write an article called Program Development by Stepwise Refinement, about how to teach programming and something all computer science teachers and aficionados should read. His book Algorithms + Data Structures = Programs helped shape how I think of computers even today, because it turns out the more things change the more they stay the same. He also coined Wirth's law, which states that software is getting slower more rapidly than hardware becomes faster. Every time I see a beachball or hourglass on my laptop I think of that. This could be initially from his work on building a compiler into the ALGOL language, which resulted in ALGOL W and watching that turn into the swamp thing that was ALGOL X and then ALGOL 68, which became so complex and difficult that writing good compilers became out of the question. Due to this ALGOL languished, making room for PASCAL in the hearts of early programmers. While PASCAL is his most substantial contribution to computing, he also designed parts of Algol, Modula and Oberon, and did two sabbaticals at Xerox PARC, the first from 1976–1977 and the second from 1984–1985. Here, he would have been exposed to a graphical operating system and the mouse, before Apple popularized them. Perhaps one of the most enduring legacies of PACAL though, is A. A is a computer pogromming language that was originally written as a hoax. Dennis Richie had just finished reading a National Lampoon parody of the Lord of the Rings called “Bored of the Rings.” Unix as a parody of Multics mean to “to be as complex and cryptic as possible to maximize casual users' frustration levels” Ken Thompson would go on to describe A this way “Dennis and Brian worked on a warped version of Pascal, called 'A'. 'A' looked a lot like Pascal, but elevated the notion of the direct memory address (which Wirth had banished) to the central concept of the language. This was Dennis's contribution, and he in fact coined the term "pointer" as an innocuous sounding name for a truly malevolent construct.” Anyone who has gotten a null pointer exception should know that their pain is intentional. The prank evolved into B and then C. By the way, the hoax is a hoax. But there is a little truth to every lie. The truth here is that in many ways, C is the anti-pascal. I blame Berkeley in the 60s. But not for wasting your time with the hoax. For that I blame me. I mean, first I blame the creators of Unix, then me. PASCAL has all but been replaced by a multitude of languages starting with the word Visual, Objective-C, Java, Go, Ruby, Python, PHP, and other more “modern” languages. But it is still, as they said in Beneath the Planet of the Apes, it is “Another lovely souvenir from the 20th Century.”
An airhacks.fm conversation with Roberto Cortez (@radcortez) about: Turbo Pascal 4.5, 8086 vs. 486, Java in 21 days, interactive web with Java applets, early Siri prototype, Notepad as IDE, Integration of all insurance companies as first project with Java EE 5, building a house and the bricks at the same time with GWT, xdoclet and middlegen, first JavaONE and the Jelastic party, 500 JUG members, no headsets and no coffee at CodeONE, tomitribe, a developer without coffee, David Blevins (@dblevins), tomitribe CEO, openEJB committer, from TomEE user to TomEE developer, how to never get bored, TomEE's killer feature is super fast environment, TomEE 8 for Java EE 8 and microprofile, TomEE integrates various Apache projects like Apache CXF, Apache openEJB, Apache openWebBeans, Apache openMQ, 65 MB for a full Java EE 8 server, TomEE and Microprofile 2.0 compliance, the TomEE release process, tomitribe vs. apache committers, spring popularity, Java EE is lacking a central website, the secret about TomEE's performance, find Roberto on: @radcortez, CoimbraJUG, jnation, TomEE.
This is the tale of how I finally found my people hiding behind a secure door at an Apple Computer building in Cupertino, CA. (leased by Symantec). At 11 and a half minutes it's my shortest episode to date. Rather than attempt to summarize this funny story, I suggest you give it a listen. I bet you don't see the ending coming!The image for this episode is a screenshot of code I wrote in response to a CompuServe Turbo Pascal forum question. I'd often respond with some code and then later use the code in an article, or write a unit (Turbo Pascal's way of packaging a library) and upload it to the public domain (the old school original "open source"). I have found samples of code from the early 80s still available online and some of the code went into operating systems and entire generations of products. You'll note my contact info is my CompuServe ID since this back in '88. Like much of my 1980s published code this showed how to interact with systems level stuff from your Turbo Pascal program.
A conversation with Tobias N. Sasse (@tnsasse) about: ToDo applications with Visual Basic, Delphi, Turbo Pascal, Java in Spain, Cookbook about Java with Object Oriented Hamburgers, reading data from DB 2 to Hadoop, DB2 rocks, airhacks.com workshops, WebSphere Libery, OpenLiberty and Microservices, Right-Sized services, stupid microservices or reasonable software practices, the interview: "10.000 Thin WAR deployment cycles or IoT with pure Java EE at IBM", IBM Elderly Care, applying smart home devices to help elderly people, Cognitive Eldercare, streaming data with Java EE 7, Java EE 8 and MicroProfile, Watson IoT Platform, MQTT Broker, caching home hub or base station, Quality of Service with MQTT -- Deliver Once, why the WARs are 5 MB big, 10 microservices and their names, Boundary Control Entity (BCE) or API, Service and Model, without BCE you don't have to focus on business, 5 developers with 10 WARs, why youngsters love Java EE, using Java EE without thinking about it, boring Java EE without "best of breed", teasing Java EE to youngsters, hack zurich, JavaScript looks more like Java, the browser is the JVM, architects damaging the developer experience, from cloudfoundry to kubernetes, 10k deployments, few seconds for Thin WAR deployment, lightning Maven builds, OpenLiberty on Docklands, OpenLiberty: modularity without incovenience, mixing MicroProfile with Java EE 8, MicroProfile: the incubator to Java EE, Java EE as the based layer, OpenLiberty: buying support is optional, the days of factories, interfaces and crazy patters are over, no Impls, focussing on the business problem, inspiring airhacks.com, jcon.one conference, Tobias at Linked-in and twitter: @tnsasse.
In Episode 1, Microsoft’s CTO Kevin Scott introduces us to one of his coding heroes, Anders Hejlsberg. Anders has had a 35-year career building tools that software developers love. He built Turbo Pascal, served as chief architect of Delphi, moved to Microsoft to help create C-sharp and today, spends his time as the core developer on Typescript. You may be surprised to hear how he got started in the tech industry.
Panel: Charles Max Wood Guest: Kyle Simpson This week on My JavaScript Story, Charles speaks with Kyle Simpson. Kyle is most well-known for being the writer of You Don’t Know JS. He first got into programming because his friend’s dad was a programmer and he was hooked by the software side of computers. He grew up writing games with QBasic and Turbo Pascal and then in his teens did some client projects. He was very much a self-taught programmer and ended up sticking with it into his career today. They talk about what led him to JavaScript and what he is doing currently. In particular, we dive pretty deep on: Kyle intro You Don’t Know JS How did you first get into programming? Dad’s friend was a programmer Dad built computers Wrote games with QBasic and Turbo Pascal Some client projects in teen years Very much self-taught programmer CS degree in college First professional job at a biotech company Do you feel people need to get a CS degree these days? Grateful for his degree What engineering taught him Striving to understand why and how things work Don’t need a CS degree but you do need a certain mindset Valuable but not necessary What led you to JavaScript? Web Portal at his college What made you want to deepen your knowledge of JS? What are you working on now? And much, much more! Links: You Don’t Know JS JavaScript Kyle’s GitHub Functional-Light JavaScript @getify Kyle on Front-end masters Picks Charles Template Weeks Working Out Kyle Fluent Conf Node RSA
Panel: Charles Max Wood Guest: Kyle Simpson This week on My JavaScript Story, Charles speaks with Kyle Simpson. Kyle is most well-known for being the writer of You Don’t Know JS. He first got into programming because his friend’s dad was a programmer and he was hooked by the software side of computers. He grew up writing games with QBasic and Turbo Pascal and then in his teens did some client projects. He was very much a self-taught programmer and ended up sticking with it into his career today. They talk about what led him to JavaScript and what he is doing currently. In particular, we dive pretty deep on: Kyle intro You Don’t Know JS How did you first get into programming? Dad’s friend was a programmer Dad built computers Wrote games with QBasic and Turbo Pascal Some client projects in teen years Very much self-taught programmer CS degree in college First professional job at a biotech company Do you feel people need to get a CS degree these days? Grateful for his degree What engineering taught him Striving to understand why and how things work Don’t need a CS degree but you do need a certain mindset Valuable but not necessary What led you to JavaScript? Web Portal at his college What made you want to deepen your knowledge of JS? What are you working on now? And much, much more! Links: You Don’t Know JS JavaScript Kyle’s GitHub Functional-Light JavaScript @getify Kyle on Front-end masters Picks Charles Template Weeks Working Out Kyle Fluent Conf Node RSA
Panel: Charles Max Wood Guest: Kyle Simpson This week on My JavaScript Story, Charles speaks with Kyle Simpson. Kyle is most well-known for being the writer of You Don’t Know JS. He first got into programming because his friend’s dad was a programmer and he was hooked by the software side of computers. He grew up writing games with QBasic and Turbo Pascal and then in his teens did some client projects. He was very much a self-taught programmer and ended up sticking with it into his career today. They talk about what led him to JavaScript and what he is doing currently. In particular, we dive pretty deep on: Kyle intro You Don’t Know JS How did you first get into programming? Dad’s friend was a programmer Dad built computers Wrote games with QBasic and Turbo Pascal Some client projects in teen years Very much self-taught programmer CS degree in college First professional job at a biotech company Do you feel people need to get a CS degree these days? Grateful for his degree What engineering taught him Striving to understand why and how things work Don’t need a CS degree but you do need a certain mindset Valuable but not necessary What led you to JavaScript? Web Portal at his college What made you want to deepen your knowledge of JS? What are you working on now? And much, much more! Links: You Don’t Know JS JavaScript Kyle’s GitHub Functional-Light JavaScript @getify Kyle on Front-end masters Picks Charles Template Weeks Working Out Kyle Fluent Conf Node RSA
Gauche Schemeの作者の川合史朗さんと、Z80 CPUを使ったPCをホストコンピュータなしに自作した話や、Schemeの話などをしました。出演者: 川合史朗 (@anohana)、Rui Ueyama (@rui314) https://turingcomplete.fm/14 ハッシュタグは#tcfmです。 TCFMはサポーターの投げ銭によって収益を上げています。このコンテンツに課金してもいいよという方はぜひクリエイター支援サイトPatreonから登録してご協力ください。 ハワイ在住で副業は俳優 (0:00) Gaucheは仕事でも使っている (2:21) Common LispはGoogle(元ITA)でも使っている (3:11) Noahでプロセスのundumpができないだろうか? (5:00) Clojureの起動はJVMなので速くない (6:02) Lispコンパイラは改善の余地あり (8:47) Webのスクリプト言語はJavaScriptではなくSchemeが採用されるはずだった (10:09) ShiroさんはGCCのコードから多くを学んだ (12:12) 並列Cコンパイラのプロジェクト (13:45) Gauche Schemeはとてもきれいなソースコード (14:55) 中学生のころに電子工作としてZ80の自作PCを作り始める (17:55) 本物のPCは高すぎて買ってもらえなかったので電気屋の店頭でコードを打ち込んでいた (20:04) 親にこれからコンピュータは絶対必要になるとアピールするも失敗 (21:13) テレビを修理しようとする話 (22:58) トラ技で「Z80を使ってマイコンを組み立てよう」といった記事などをみて自作を始める (25:17) 入出力はスライドスイッチとLED (26:13) バスを直接スイッチで操作してメモリに手で書き込んでいく (28:29) プログラムを書き込むためのプログラムを作る (29:58) 7セグLEDと16進キーボードを作って接続 (31:20) ROMライターを作ってROMから起動できるように (33:42) 殺虫灯でEPROMを消去 (34:19) フルキーボードとテレビを接続できるように (36:41) フォントを作ってキャラクタROMを作り画面に文字を出す (37:35) テトリスを作る (40:08) テトリス作者とその後一緒に仕事をすることになった (40:59) フロッピードライブを動かす (43:59) ファイルシステムがないのでノートにファイルの保存位置をメモっておく (46:53) CP/Mを動かす (47:33) アセンブラを入手 (49:42) 大学でチップを作った話 (50:52) クロックは最初は2MHz (54:26) Z80のノウハウを使ってSillicon Graphicsの巨大なマシンにPS2のゲームコントローラをつなぐハードを作成 (55:14) プログラミング言語APL (56:21) Turbo Pascalを入手 (1:00:00) オーブンに入れて遮蔽 (1:01:50) フロッピーディスクは信頼性が低かった (1:03:57) 大学時代に386BSDを(普通のPCに)インストール (1:05:01) TCP/IP以外のネットワークプロトコルも普通にあった (1:09:19) ハードウェア共有分散メモリとそのためのコンパイラとNoahとの共通点 (1:10:29) コンピュータは極端に進歩しているところとあまり変わっていないところの差が激しい (1:15:00) PS2のコプロセッサでアセンブラプログラミング (1:16:31) SIGGRAPHのデモでファイナルファタジーの映画の一場面をリアルタイムレンダリング (1:18:26) 意外なところで自分のやっていることが一周回って役に立つことがある (1:21:12) Gauche Scheme ハッカーと画家 Gauche Schemeのソースコード Steel Bank Common Lisp ITA Software Clojure言語 V8 JavaScriptエンジン JavaScript作者のBrenden Eichは当初「Schemeをやる」約束でNetscapeに雇われた WebAssemblyのS式フォーマット gotoを使った手書きのDFA Gaucheのbuffered port オーブンPC ラジオを直す話(ご冗談でしょう、ファインマンさん) 紫外線照射で消去できるROM、EPROM 7セグメントLED 紫外線を放つブラックライト フラッシュメモリ テトリス アレクセイ・パジトノフ(テトリス開発者) ヘンク・ロジャース(テトリスの権利を買い付けてきた人) 最初はいたずらだったが最後には実在するホストになったソ連のkremvax.demos.su フロッピーディスク 線速度一定 CP/M ワイヤ・ボンディング APL J APLによる1行のライフゲーム: ↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵ Turbo Pascal 386BSD SLIP PPP AppleTalk ATMプロトコル SonyのCellプロセッサ SIGGRAPH(シーグラフ) 追記 10BASE-2と10BASE-5の説明が逆になっています。 後半でPS2のVUとPS3のSPEを混同して話しています。
Panel: Charles Max Wood Guest: Jesse Liberty This week on My My Angular Story, Charles speaks with Jesse Liberty, Jesse is a return guest, previously on AiA Episode 015. Currently, Jesse is working on mobile applications at Wintellect as a Senior Consultant. Jesse talks about his journey in Angular, starting with getting into computers in high school and college, discovering IBM computers. Then learn Turbo Pascal. C, C++, etc. Jesse shares his recent contributions and current projects. In particular, we dive pretty deep on: How did you get into programming? IBM computers Turbo Pascal C, C++, C# How do you get to web development from 1s and 0s? Mosaic HTML JavaScript, CSS, etc. What there something you like about JS? Extensive Libraries on top of it… TypeScript What was your path from web development to Angular? Angular 5 What did you build with Angular, anything, in particular, you’re proud of? Xamarin forms Xamarin Native Why Xamarin? What are you working on now? Graphics issues with Xamarin Azure Your Interest in the next few years? and much, much more! Links: https://github.com/JesseLiberty http://jesseliberty.com https://www.pluralsight.com/authors/jesse-liberty https://www.lynda.com/Jesse-Liberty/8679216-1.html http://jesseliberty.me @JesseLiberty AiA Episode 015 https://www.wintellect.com Picks Jesse Visual Studio for Mac amazon.com/shop/jesseleiberty Charles Visual Studio Live Share https://www.stitcher.com/podcast/javascript-jabber/e/52309775?autoplay=true The Wheel of Time 2 Keto Dudes Keto Reset Diet .NetRocks Podcast
Panel: Charles Max Wood Guest: Jesse Liberty This week on My My Angular Story, Charles speaks with Jesse Liberty, Jesse is a return guest, previously on AiA Episode 015. Currently, Jesse is working on mobile applications at Wintellect as a Senior Consultant. Jesse talks about his journey in Angular, starting with getting into computers in high school and college, discovering IBM computers. Then learn Turbo Pascal. C, C++, etc. Jesse shares his recent contributions and current projects. In particular, we dive pretty deep on: How did you get into programming? IBM computers Turbo Pascal C, C++, C# How do you get to web development from 1s and 0s? Mosaic HTML JavaScript, CSS, etc. What there something you like about JS? Extensive Libraries on top of it… TypeScript What was your path from web development to Angular? Angular 5 What did you build with Angular, anything, in particular, you’re proud of? Xamarin forms Xamarin Native Why Xamarin? What are you working on now? Graphics issues with Xamarin Azure Your Interest in the next few years? and much, much more! Links: https://github.com/JesseLiberty http://jesseliberty.com https://www.pluralsight.com/authors/jesse-liberty https://www.lynda.com/Jesse-Liberty/8679216-1.html http://jesseliberty.me @JesseLiberty AiA Episode 015 https://www.wintellect.com Picks Jesse Visual Studio for Mac amazon.com/shop/jesseleiberty Charles Visual Studio Live Share https://www.stitcher.com/podcast/javascript-jabber/e/52309775?autoplay=true The Wheel of Time 2 Keto Dudes Keto Reset Diet .NetRocks Podcast
Panel: Charles Max Wood Guest: Jesse Liberty This week on My My Angular Story, Charles speaks with Jesse Liberty, Jesse is a return guest, previously on AiA Episode 015. Currently, Jesse is working on mobile applications at Wintellect as a Senior Consultant. Jesse talks about his journey in Angular, starting with getting into computers in high school and college, discovering IBM computers. Then learn Turbo Pascal. C, C++, etc. Jesse shares his recent contributions and current projects. In particular, we dive pretty deep on: How did you get into programming? IBM computers Turbo Pascal C, C++, C# How do you get to web development from 1s and 0s? Mosaic HTML JavaScript, CSS, etc. What there something you like about JS? Extensive Libraries on top of it… TypeScript What was your path from web development to Angular? Angular 5 What did you build with Angular, anything, in particular, you’re proud of? Xamarin forms Xamarin Native Why Xamarin? What are you working on now? Graphics issues with Xamarin Azure Your Interest in the next few years? and much, much more! Links: https://github.com/JesseLiberty http://jesseliberty.com https://www.pluralsight.com/authors/jesse-liberty https://www.lynda.com/Jesse-Liberty/8679216-1.html http://jesseliberty.me @JesseLiberty AiA Episode 015 https://www.wintellect.com Picks Jesse Visual Studio for Mac amazon.com/shop/jesseleiberty Charles Visual Studio Live Share https://www.stitcher.com/podcast/javascript-jabber/e/52309775?autoplay=true The Wheel of Time 2 Keto Dudes Keto Reset Diet .NetRocks Podcast
An interview with Marcel Pociot, creator of BotMan and co-founder of Beyond Code. Marcel on Twitter API Doc generator BotMan BeyondCode Laravel Notification Channels Marcel's Laracon EU talk Night Night Baby | Träum Süss BotMan slack invite Editing sponsored by Larajobs Transcription sponsored by GoTranscript.com [music] Matt Stauffer: Welcome back to the Laravel podcast, today we're talking to Marcel Pociot, the founder of BotMan, the framework agnostic PHP chatbot package. Try saying that two times, 10 times fast. Stay tuned. [music] Welcome back to the Laravel podcast. This is season three where we're doing interviews. It's the people you know—getting to know aspects of them you never understood. Or it's also finding some people who you probably have used their tools or you've seen them but you don't actually, necessarily know who they are. Those names who you've been putting in GitHub require or to Composer require for ages but never actually known who the person is. The guy we have in front of us today, I'm actually curious to see what his entire history of working with Laravel is, but the current most present one that's going on right now is connecting Laravel to chatbots and slackbots, and all that kind of stuff, and this is called BotMan but there's a lot more going on here. First of all, we start with the point where I massacre somebody's name and then we move on to the next point where I ask that person to say their name correctly and then introduce themselves a little bit. Marcel Pociot, that's close, not perfect. He's still smiling, so I didn't massacre it too badly. Can you tell us-- and I'm probably ending up calling you just Marcel through this podcast. Marcel Pociot: Yes, that's fine. Matt Stauffer: That's because it is easier for me to say. Thank You. Can you tell us a little bit about-- just real quick, you don't have to tell us your whole life story, I'll ask those questions but—who are you? What are you doing? What are you about? What's BotMan? What is your new company? Just give us the basics of what should we know about you. Marcel Pociot: Okay. Yes, my name is Marcel Pociot. I think that's at least the German pronunciation. I co-founded a company in December last year. Matt Stauffer: Congratulations. Marcel Pociot: Thank you. Very fresh still. I think you're one of the first people that I actually tell this in person that's not from my family- Matt Stauffer: I got the insider track then. [laughter] Marcel Pociot: -and friends because the website isn't finished yet. Yes. I think I'm quite around in the Laravel community for a bit. Matt Stauffer: You've been working-- I've known you just generally in the Laravel community, but you're one of those people where I know that I've known you but I don't even know how we originally connected. Now, you mentioned that we spoke together at a conference so that it may have been it, but do you have any early claim to fame in the Laravel community? Were there any packages that you did earlier on it that were more popular or is it just that you've been around for a while that you're known? Do you know? Marcel Pociot: Well, I did a few. There is one, I think it's called teamwork, for some user/team association package. Matt Stauffer: I remember that. Marcel Pociot: But they're all a bit older. Matt Stauffer: Where did first start using Laravel? Marcel Pociot: Two and a half years ago, I think. I wasn't doing that much PHP back in the days, at least not with frameworks. At the companies I work with, they were using self-built frameworks which are usually crap. You do this once in your lifetime and never again. Well, I ended up at companies that did it all the time. At one point, we decided that we'd built a SaaS application and we were looking for framework to use. This is pretty much the story I tell everyone when they ask me how I got into Laravel. My boss was really into Zend because of the whole Zend ecosystem, with the Zend Studio and the Zend server. I looked into the Zend framework, I think it was two. I gave it a week, I gave it really my best shot. I even bought a book and to gave it a try. In the meantime, I looked around for other frameworks and discovered Laravel. What I did with Zend framework in a week, I did with Laravel in an hour in the evening on the couch. This was the main motivation to use Laravel then. Matt Stauffer: Got it. Okay. I do remember that one of the things that, originally I saw, is that you were doing the Laravel notifications thing. Did you help co-manage that? Marcel Pociot: Yes. Matt Stauffer: Or manage or- Marcel Pociot: With Mohamed and Freek, yes. Matt Stauffer: Okay. Cool. Got it. Stepping back for a second, it's so funny because I try not to go too deep in my own ethnological and linguistic curiosities in the podcasts because nobody else isn't quite as interested as I am, so one of the things I actually ask myself before we were on a call is how was your English so good, we went to that little bit but I must admit that based on your name, it's sounds French to me, but I know that you live in Germany. Are you French origin living in Germany or I'm I just totally? Marcel Pociot: No. I hear that a lot. I think it's also because of my first name. People try to pronounce it French, like Marcel Pociot or something like that. Matt Stauffer: That's exactly what I expected you to say when you first told me, yes. Marcel Pociot: As far as I can tell, the name-- we can't trace it back that much. I think it's just two generations and it's from Eastern Europe, so that's pretty much all I can say. Matt Stauffer: Okay, but you're German, you live in-- where do you live in Germany? Marcel Pociot: Near Dusseldorf, which is near Cologne so, yes. Matt Stauffer: I took a little bit of German in high school and college and probably forgot the majority of it, but just enough that I can read a couple of German story books to my kids and to try to get a little bit of German heritage in for them. My sister was in a little bookstore, a local bookstore and found this-- what's it called? It's like sweet dreams or something like that - Träumt Suss? Marcel Pociot: Susse Träume? Matt Stauffer: Anyway, it's this cute little blue book so I read it to my son over and over and over again, and my pronunciation was really bad at day one, but over time I got good at it. Then at some point, my wife found the exact same book in English and so now, with both of my kids, I read them both of the books back and forth, but my daughter is understanding enough English right now that when I read the German version to her she's like, "Wait a minute, I don't understand this one". She gets mad at me [laughs] because she prefers the English version. Anyway, cool. I do remember there was another big one, the API documentation generator, tell me a little bit about that project. Marcel Pociot: Well, it's a tool that you can pull into your Laravel application and it will basically just reads the routes that you define, so you can call it and give it the prefix of the routes that you want documentation for and will scan the routes and create this Stripe like documentation. So that you have the documentation on the left and then code examples how you can interact with the API on the right, and it does it by just pausing the routes and then reading the documentation of the code. Matt Stauffer: Is it its own thing or is generating like one of the preexisting styles? You know what I mean? Because I've never got to use it, but we are always looking for API documentation generators. Marcel Pociot: It's a theme that's called slate, so it's using this. Matt Stauffer: Cool. Very cool. I'll put links in the show notes. But the main two that I see associated with your name right now are the API doc generator and then, of course, BotMan, which we'll talk about in a minute. Those are the things and then we've got your company. Let's real quick talk about what is BotMan, where did it come from and then also, what's your company and then we're going to dig into the back story. BotMan, what is BotMan? What does it do and where did it come from? Marcel Pociot: Okay, I'll start with where it came from. It was really just coincidence. Late 2016, Slack announced that they now have a new HTTP based API, it's called event API. Basically, before that when you wanted to react to Slack events, like new messages, you had to connect through web sockets and the new API was basically just webhooks. Whenever a new action appears-- yes. Well, I mean, if you have a large Slack team it will blast a lot of events to your server. When I heard that Slack announced this API, I just thought that it would be cool to have a PHP API that wraps around it and have an elegant API around it, it's sort of what Laravel is all about, then apply this to Slack. Then I did this, I open sourced it. It was called just SlackBot at the time. It lay around there for three or four months, I didn't do anything with it and then, I came up with the idea that it might be cool to connect multiple services to it, not just Slack, but also Telegram and Facebook Messenger. That's the main thing with BotMan. It's one of the only-- maybe it's the only —PHP library that actually allows you to connect to multiple messenger services. Matt Stauffer: Yes. If it not the only, it's the only one that matters. That's what I think. [laughs] Marcel Pociot: It allows you to connect to these services with one API and reuse your code. Matt Stauffer: One of the hardest things for people to think about, chatbots— everyone hears "Chatbot is the cool new thing", whatever and often, it's really difficult to understand in what context would I actually want to use this, what are some--? Some of the simplest ones we've seen are, "Oh well, when I hook into a CodeShip integration, something that already exists but, what are some of the-- either in your personal use of it or in seeing other people use it, what are some of the most compelling uses of chatbots? Whether it's in Slack or Telegram, or whatever else that you've seen to help people's imagination get started a little. Marcel Pociot: Yes, I think the problem is that people always associate chatbots with these super artificial intelligence systems that understand whatever the user wants. In my opinion, it's just a different interface for your application. It's a conversational interface for your application and what I've seen that was built with BotMan, a lot is like websites, for example, for insurance companies. On their website, they have this chat bubble, that you know maybe from Intercom, and what it does is it guides you through the website. When you click on a button, the chatbot opens and asks you a question related to the action that you triggered when you clicked on the button. That's one-use case and I think- Matt Stauffer: I want to stop you for a second. When I think of a chatbot, what I think about is something that allows someone to use a preexisting chat system, like Facebook Messenger or something else, to interact with their backend API. What you're describing sounds like an entirely manual process where you just used webhooks to hook in your app, right? Am I missing what you're talking about? Marcel Pociot: No. That's also possible. With BotMan, it is the web drivers, so you can just connect it to your own API and then you send the message from your user to your own API and reply back. Matt Stauffer: Okay. Got it. Marcel Pociot: But in the end, that's what happens with Telegram or Facebook too. Yes. Matt Stauffer: So really, anything that has to do with sending and receiving messages to your user in a chat-like format. Marcel Pociot: Yes, right. Matt Stauffer: Regardless of which chat format they're usbing. Okay. I think the on page one is just so clear of an example. Everyone has used a website with Intercom on it or one of Intercom's competitors at some point. I get that one. I think that's super compelling. I'm happy to know that if I need to build that, still reach for BotMan, that's cool. I wouldn't have known that until you said that. Have you seen people use-- I think the hard thing for me is that when I think about Telegram or when I think about Facebook Messenger, I very infrequently think about interacting with someone who has enough money to have an API. I think of my friends. I'm sending a message to my friend, my friend messages me back. Have you seen or heard of really compelling use cases where people are using traditional chats systems, outside of Slack? We'll talk about Slack in a second, but has anybody done anything interesting that you know of with Telegram or Messenger or are those little more aspirational at this point? Marcel Pociot: Messenger is used a lot for more marketing kind of services. For example, TechCrunch has this, well, it's a chatbot where you can-- when you sign up you can register for different topics from their RSS feeds. Matt Stauffer: Intere-- wow. Marcel Pociot: Then you get- Matt Stauffer: They are using it to publish information out and people are subscribing. Marcel Pociot: Yes, every evening-- so you can select topics and then the time. Every evening, I get the top 10 stories from TechCrunch into the Messenger. Matt Stauffer: You just blew my mind. My son just started a podcast www.stauffersonscience.com, and I have a whole bunch of people who I grew up with, who are completely un-computer savvy and they're all saying, "How do I subscribe to a podcast?", I'm like, "Oh Gosh, how am I going to handle this?". I could build a little light Laravel or Lumen app that subscribes to the RSS feed of the podcast and allows people to enter their-- authenticate their Messenger information and pushes every new episode to their Messenger inbox. Marcel Pociot: Yes, right. Matt Stauffer: Holy crap, you just blew my mind. That's amazing. That is so cool, that's so clever. That opens up so many things for people to subscribe because everybody, all your non-tech savvy friends, your mom, your grandma, all of them, they all have Facebook which means they all have Messenger. Marcel Pociot: Yes. I think even more like the younger generation because they don't have MacBooks or laptops, they just have smartphone and use Messenger to communicate. Matt Stauffer: Do you know-- I'm sorry I'm just going into the weeds here, but I am so fascinated. If somebody doesn't use Messenger and they send something to a Messenger authenticated thing, does it show up on the web interface in their little messages thing in Facebook website? Marcel Pociot: You mean if they don't use the Messenger application? Matt Stauffer: Like if somebody doesn't have an iPhone but they go to facebook.com on their browser every day, can they do Messenger interactions using the little- Marcel Pociot: Yes. Matt Stauffer: Okay, so it's the same thing as Facebook. Man, I need to pause for a moment, this is so cool. Okay, broadcasting makes a ton of sense. Broadcasting information, this—in some ways, you have some of the value but a lot more configurability of like an RSS feed through a multiple-medium subscription. That makes a ton of sense and I get that now. Marcel Pociot: Plus, I think. maybe this will change over time, but right now the click rates are much higher because it's not that overused as e-mail newsletters. For example, with the TechCrunch- Matt Stauffer: They feel more personal too? Marcel Pociot: Yes. It feels-- even though you know that you're not actually talking to someone at the company, it feels like you're interacting with the company, well, with its brand. The whole market taking thing is really popular on Facebook, also for artists, they have chatbots that you can ask, "where's the next concert?", and the user feels like they are talking to, I don't know, Beyoncé, whatever. Matt Stauffer: Interesting. I was just going to ask about questions. That one right there would feel like a little bit of natural language processing. If you can do some of that then you can have like ask questions of our whatever bot, or whatever, and that makes sense too. You imagine that you are working for some big company, like an insurance company maybe, and they say, "You want to ask us a question? Here, hook up to our messenger bot and you can ask--" blah, blah, blah. The messenger bot parses out using some basic natural language processing. So, the messenger bot is basically BotMan hooked in your API. The API, your Laravel app takes the questions tries to process them, tries to look up an answer and then sends the message back to that person. So that BotMan would be the interface layer in between. Marcel Pociot: Yes, right. Matt Stauffer: Okay, that makes sense. Slack makes the most sense for our context. I think we're all sitting and using cycle work every day, and it seems like Slack is adding more and more things you can do every time. Buttons at the bottom and stuff like that. What is the most interesting thing that you have built or seen built with Slack integrations on BotMan? Marcel Pociot: It's also interesting because Slack got-- I think they moved away from the term chatbots a while ago, and I think they just called it application. They even integrated like forms that open up, like select boxes, drop downs. I haven't seen that many slackbots using BotMan. There's one, I forgot the name who built it, but he built a slack game, it's like a dice rolling game, it's called Liar's dice. Matt Stauffer: I, obviously, could talk about BotMan the whole time. But this isn't actually about BotMan, this is about you. BotMan is amazing, there's all sorts of interesting stuff. You also have given-- do you know if your Laravel EU talk is online? I didn't actually watch those. Marcel Pociot: Yes, it's online. Matt Stauffer: Okay, great. I'll put a link up to your BotMan talk which is called From zero to multi-platform Chatbot with BotMan. I'll put the link up to that one as well. Let's move on to you. The first place I always start with everybody is, when did you first get interested in computers? Or when did you first get access to a computer? What did your original kind of exposure to computers? Marcel Pociot: I think the first memory that I have from a computer was, I was sitting, I might be like 6 or 7, sitting in the living room with my father, and I don't remember what kind of computer it was. But we had a book with games, so if you wanted to play a game that was the source code of the game in the book. Matt Stauffer: Was it BASIC? Marcel Pociot: Yes, it was. You had to type it in and then you got the game. What I remember, maybe that's also the reason why I remembered it is, my father was sitting there and typing everything in, and I just came at the power adapter and the whole thing crashed. [laughter] He was frustrated. Matt Stauffer: Yes, I believe it. I assume that was like one of those black and green old-- those boxes. Very cool. Marcel Pociot: This is the first memory of sitting in front of a computer. Matt Stauffer: I try not to call at people's ages too much, but I think that you're around my age, around 33, is that right? Marcel Pociot: Yes. 32 and in April 33. Matt Stauffer: We're almost exactly the same age. In our generation it was not all that common, at least in the US, I don't know about Germany, for people to have a home computer when we were that young. Since your father was the one doing this. Was your father-- was he a geek or is he a programmer? Marcel Pociot: Not at all, no. He was always interested in it, but well not so much that he really wanted to write more code than there was in the book. [laughs] Matt Stauffer: At what point did your interaction with the computer go from pulling out the plug from your dad typing in BASIC program to you creating things on your own? Marcel Pociot: I think it was-- in school we had, at the programming class, we wrote Turbo Pascal. Matt Stauffer: Wait, what age of school are you talking about? Marcel Pociot: I think this is seventh grade, so I must have been like 12, 13. Matt Stauffer: You had programming class when you were 13 years old? Marcel Pociot: Yes. Matt Stauffer: That's fascinating. When I was in seventh grade, we had typing class and I- Marcel Pociot: With typewriters or--? Matt Stauffer: They were on Macs, but they were old Macs and we'd all sit around and I would finish the Mavis Beacon thing in five minutes and then I'd go try to learn Applescript and write programs that would infect all the other computers in the network and shut them all down at the same time without the teacher noticing, but there's no formal programming education even in high school. The best we had was an engineering class where the teacher would let us go hack around and stuff, but certainly, nothing formal. So, you learned Turbo Pascal in seventh grade? Marcel Pociot: Yes, pretty much and then- Matt Stauffer: How did that go? Marcel Pociot: Well, I think we moved quite fast from there to Delphi where also-- in the class, there were a handful of people that were always very fast with all the tasks and, just as you said, had a lot of time. We developed like a Trojan, a Trojan Horse [laughter] to open the CD trays from the other computers and stuff like that. Matt Stauffer: Exactly. That's exactly what I was trying to do. That's awesome. Okay, early on you were deep in the computers, you were writing code, you were hacking at it. When did you first get into the web? Marcel Pociot: I don't really remember what age I was, but it was like the Geocities sites. All this crappy-- Matt Stauffer: Yes, man. I still remember, mine was MA slash 1984. My first two letters in my name and then the birth year. [laughter] What was your first Geocities site, you remember? Marcel Pociot: No, I just remember that I had this cool hacker name. Matt Stauffer: What? Like 1337 speak?? Marcel Pociot: Yes. Matt Stauffer: One, three, three, seven, four, four, whatever. Marcel Pociot: It was Delta2K, I don't know. Matt Stauffer: Nice. Marcel Pociot: It sounded cool. Matt Stauffer: Yes, of course, with 2k especially. Okay, it's funny because it seems like I'm either picking people to interview who are old head PHP dorks or there's something consistent about folks who are helping lead in our community that a lot of us are from similar generation. I'm curious to see where that goes, but-- you were doing that, you were playing around with it at the side, what did you study? Did you study that in university or--? Marcel Pociot: No. Here in Germany after you finish school, you can either go to a university or you can do training. You go to a company and then you have three years at the company and besides working at the company, you also go to school. Matt Stauffer: Is it a school provided by the government or provided by the company? Marcel Pociot: No, it's just a public school for learning the- Matt Stauffer: For that specific career? Marcel Pociot: -specific profession. Yes. Matt Stauffer: Got it, okay. Marcel Pociot: I did that to become a software engineer and I ended up in a company in Bochum, here in Germany, and- Matt Stauffer: I don't even know how to spell that. I'll put that down on the show notes [laughs]. Okay, cool. Marcel Pociot: Yes, that's what I did. I wasn't that much into liking school that much back in the days. So pretty early on, I decided to skip the school part and rather work five days a week, so that I can hack on some code. That's what I did and then just did the tasks on my own and learned from them on my own. Matt Stauffer: Got it. You have a pretty straight line from being a little kid watching your dad enter QBASIC programs in. Through learning in school and doing your own Geocities stuff, to being a software engineer and going straight in the industry. Have you at any point felt like, "Oh my gosh, this is not what I want to do"? Or is it just been pretty clear since early on- Marcel Pociot: Yes, it's been really clear since early on. Matt Stauffer: - "I'm a programmer, this is my thing"? Marcel Pociot: That's always what I wanted to do. It's always a bit funny when I talk to people that don't really know what they want to do with their lives and what direction they want to go because it was always really clear for me that I want to go to that direction. Matt Stauffer: Interesting. If you today-- and I know that you just started your own company in December, so hopefully this is really fresh in your head. If you today were to be able to pick exactly what you were doing day to day, if your company was successful in exactly all the ways you want it to be, what would you be doing with your time? Marcel Pociot: Right now, I would say I would still love to write code. I heard that you talked about this also with a few other people, what to do when you're 40 or 50 years old. Well, right now, I would say that I hope that I still want to write code at that time Matt Stauffer: If you found yourself in a situation where your company just-- and we will talk about you company in a second, but you just took off and it's going really well. You decide to hire five people and all the sudden, you're spending all your time doing administrative work. At that point, you think you might say, "I gotta fix this, I got to get back into the code"? Is that your sense of it right now? Marcel Pociot: Right now, it is, yes, but I'm just so refreshed and I'm really just coming from a lead developer role. Matt Stauffer: Yes. Okay. All right. Tell me about your company. You went right into that internship, what's your work history look like? You don't have to tell me every company, but what kind of stuff you've been doing. Have you been working primarily for software firms or have you've been working for non-software companies as a software programmer? Marcel Pociot: No. I just worked for agencies, like web agencies. Matt Stauffer: Got it. Marcel Pociot: The first one was very small, four people when I started there which was very cool because I got to do everything. I had to talk to customers and the clients. We had-- it was very small so we had to do things like setting up e-mail accounts for them. They called if they couldn't set up the email account on their mobile phone. Then they would come in with their phone and stuff like that. Yes, the second company was also a bigger agency but still an agency, where I did-- At the first one, I did PHP and then I got a lot into Appcelerator Titanium. Matt Stauffer: That's why I thought you'd done Titanium. Let's talk about Titanium for a second. Titanium, I feel like was one of the first used JavaScript to write multi-platform apps. How is it different and similar from something like Ionic? Marcel Pociot: The main difference is that while Ionic is just html that gets executed on the phone in the browser, or in the web view, Titanium used the JavaScript code that you wrote and they had proxies for the native languages for java or Objective C. Then the JavaScript code would call the native proxy objects that would then execute native code. When you wanted [crosstalk]- Matt Stauffer: It is more of like a predecessor of React Native. Marcel Pociot: Yes, right. It's like- Matt Stauffer: Okay. Got it. Is it still around? Marcel Pociot: It is. The company got acquired and they still develop it but the time Facebook announced React Native, the community just ran away and went to Facebook, yes. Matt Stauffer: Got it. Okay. I'm sorry, I interrupted. You were doing that at that company and then--? Continue. Marcel Pociot: Yes. Titanium was also my main motivation to work on open source in the first place. I haven't done that before and I started developing Titanium modules. Just small user interfaces- Matt Stauffer: Like packages. Marcel Pociot: Yes. Right. User interface libraries to share and I put them open source and I think I did Titanium for, maybe, one and a half years. Mostly Titanium and then also some Java and Objective C to work on some native modules. During that time, I got bit away from PHP because also, at the time, there was no Composer. The whole ecosystem wasn't as stable as it is right now. Matt Stauffer: Yes. What brought you back? Marcel Pociot: Well, I think it was just a client project. [laughs] Matt Stauffer: Okay. Did they say PHP or it was a web and you had to pick and you just pick PHP because you knew it? Marcel Pociot: Yes, because I knew it and also because of React Native. When React Native was announced, Titanium just pretty much died. Matt Stauffer: Yes. But that was pretty recently, right? Marcel Pociot: Well-- Matt Stauffer: Like a year [crosstalk] Marcel Pociot: No. Native is more around more than a year, I think. Matt Stauffer: Is that real? I believe you, I don't actually know. Okay. Yes, let's say, it may be as long time as 2015 but-- because a lot of times when I hear people talk about "I stepped away from PHP--", blah, blah, blah, "and I finally came back", and they are in the Laravel community. A lot of them came back right around the time when Laravel 4 came out. Maybe I just got the timeline on that wrong in my head. When did Laravel 4 come out? Marcel Pociot: When I started working with their Laravel, 5 came out. I think I worked with 4 for about a month. Matt Stauffer: That is what I was expecting then. Okay. Marcel Pociot: Yes. We started this SaaS product at our company and we chose to use Laravel 5 because-- I think the main reason was the form requests, which just blew my mind. I thought they were super cool to validate stuff and then we decided to pick up, there Laravel 5 during the development with the beta, there was no good decision. Matt Stauffer: I didn't say and it was also bad decision. Marcel Pociot: We had to fix several things every day and at some point we just pinned the dependency to one specific commit, so we knew, “okay, this is working” Matt Stauffer: And you built against that commit until you released it until and then deal with all the fixes at once. Marcel Pociot: And then it stays that way for a long time Matt Stauffer: It's funny. This timeline does line up here is what I have seen, as four came out in 2013, five came out in 2015 and React Native was announced probably at some point in 2015. So you were deep in titanium, you were off in that world and interestingly you were doing a lot of other mobile stuff. You talked about getting into Java, getting into objective C a little bit it, so it was both Titanium, which is JavaScript but then also the adapter worlds, which means you got to know a little bit of Java from Android, a little objective C for Apple and then you all of a sudden come and jump back into PHP and it was Laravel 5, things were modern and Composer all that kind of stuff, were you still working for that same consultancy at that point? Marcel Pociot: Yes, must have been sort of at the same time that I switched jobs, yes. And I didn't do that-- I always did PHP in the afternoon on the couch Matt Stauffer: Got it. It was still always like your fun time favorite language because I know a lot of people would say they left, they're like "oh well, I got tired of PHP I left for rails, I got tired of PHP and I left for .NET or whatever, so you still had a soft spot in your heart for PHP the whole time. Marcel Pociot: Yes right, but not with the framework at the time. Matt Stauffer: You ever rolled your own? You said your company rolled their own, Marcel Pociot: Yes, of course. Matt Stauffer: Does it have a name? Marcel Pociot: No, it didn't really have a name, no. Matt Stauffer: Never got that far? Marcel Pociot: No. Matt Stauffer: Okay. You got a pretty classic story here, obviously everyone's different but a lot of us left at some point a lot of us came back at some point but it's interesting for the amount of impact you have made with BotMan you came up to Laravel pretty recently and BotMan isn't really a Laravel framework either. I feel like it was tied to Laravel at some point, is it basically just a PHP framework that does it even have a Laravel convenience layer on top of it right now? Marcel Pociot: Yes it does. It is framework agnostic but there's a piece that's called BotMan Studio which is basically a blank Laravel 5.5 installation with some additional BotMan service provider and additional commands, a Tinker page to play around with it but it's not tied to Laravel. Matt Stauffer: Got it. Okay we've caught up, you switched consultancies, you got in Laravel 5, you built BotMan, you talked about how you built BotMan so let's talk about your company. We chatted on and off about it but let's pretend that we haven't chatted at all. In December you formed your own company, you went out on your own. Tell me about it, what's your motivation, what's your goal, what's your desire; what made you want to get out of working for other consultancies and start your own thing and what is your own thing? Marcel Pociot: Okay. I'm not doing this alone, I'm doing this with a former colleague, he has been a freelancer for a year now already and already a year ago when he left the company, we were already thinking about doing something on our own and I think the main motivation was- when we started this SaaS application at our company, we thought about turning it into its own company, which they eventually did. I ended up sitting in a new office with my now business partner and the CEO from this new company and we basically sat together for 2 years, just the two of us working on the product and we just knew that the CEO back at the time was a sales person and- how can I put it, a sales person as the CEO of a software product is difficult. This was like the main motivation because we had a different idea of the product, the way we wanted to get with it and it didn't turn out into that direction so we thought that, well if we do something on our own, we can give it our best shot. Matt Stauffer: Okay. Is it a similar product to what you originally planned but since it didn't go the way you originally planned you're going to go build, are you doing product work then? Marcel Pociot: Right now the company is called Beyond Code and we are, it's sort of a split. We have, on the one hand, we do projects, project work mostly we try to do it for Chatbots obviously. Matt Stauffer: Your consultancy that builds Chatbots for people as a part of what you're doing. Marcel Pociot: Yes, right. On the other hand, we have BotMan as the library and we want to focus around building a whole product ecosystem around it so that it becomes easier for people to pick it up and use it like analytics, bot building systems. Matt Stauffer: So Beyond Code GMBH, what does that stand for by the way? I've never known that. GMBH. I assume it means limited liability corporation but the Germany version. Marcel Pociot: Yes. Matt Stauffer: Let's test my German. Gesellschaft mit beschränkter Haftung. Marcel Pociot: Yes, that's quite good. Matt Stauffer: All right. I did okay. All right. Beyond Code is a consultancy that builds primarily applications that have Chatbots on them and also uses the finances that come from that to further build the ecosystem around BotMan which is a PHP framework agnostic library to make it easy to build the type of applications that Beyond Code is building for people. Right? Marcel Pociot: Right. Exactly. Matt Stauffer: It makes sense. It's like that, not quite, like the Discourse model where like hey, there's a free or then Wordpress model. There's a free piece of software, there's also the way to pay us to do it, the money that you pay us to do it makes the free piece software better. Everything fits and everything else. Okay. That totally makes sense. All right, that's going forward. A success for the next couple years of your life would mean that the work that you're doing or consultancy work, the work you're doing for clients basically allows you to make BotMan better, is that the general? Marcel Pociot: Yes. Matt Stauffer: You mentioned analytics, you mention understanding what's going on. Are there any other big next goals or features or things that you want that you feel like you can share with us that aren't the secret sauce? Marcel Pociot: No. Not that I can share them. No. Matt Stauffer: Okay, cool. But you've got big plans, it's not just sitting where it is, it is something you want to grow. Marcel Pociot: Yes. Matt Stauffer: Okay, that's cool. I think that the ability to compellingly get someone excited about the possibilities with a Chatbot obviously is going to be a big part of your doing. I'm glad we had the opportunity for that. Like I said, I'm literally going to get off this call and go see how fast I can hack together something to send that one woman who went church with me growing up. Facebook Messenger notifications when my son's podcast goes out. I'm super geeked about that. Okay, let's see. What else, what do you do in your free time? One of the things is that you have such a straight line through programming that I think that I want to know more about what is not programming you. What motivates you? I know you've got a family, I know you've got one kid? Marcel Pociot: Yes, one kid. Matt Stauffer: One kid. How old is your kid? Marcel Pociot: Four. Matt Stauffer: Four. Okay. Obviously spending time with your family is significant but whether with your family or on your own, what do you do outside of coding? What motivates you? What excites you? What do you do when you're away from the computer? Marcel Pociot: I think I have to re-calibrate myself a bit because when I was working at the consultancy, what I was doing in the afternoon was BotMan and now I'm doing this during the day job. Matt Stauffer: Actually I got to stop you for a second. You keep mentioning the afternoon as your free time, what does your schedule look like? Marcel Pociot: It's mostly nine to five. Matt Stauffer: When you say in the afternoon, do you mean after five? Marcel Pociot: Yes, right. Sorry, in the evening. Matt Stauffer: In the evening. Got it. Okay. What you mean is basically your free time, hacking time in your old job you're doing consultancy during the day and then BotMan stuff at night but now the BotMan is your day job. How do you reorient? Marcel Pociot: Yes, I still have to figure that out myself. I'm not that much of like a sports person or anything. I think really my main motivation was to program still. Matt Stauffer: You just love coding. Marcel Pociot: Yes. Well and other than that it's mostly, beside my family of course, playing some video games but- yes. Matt Stauffer: Yes. I'm not a gamer but I gotta ask what kind of games are, I don't even know what questions gamers ask, is it a PC or console that the question they would ask what game you are into? Marcel Pociot: No, it is console but also it's funny and also a bit sad that I just realized that I'm getting old because I'm no longer good at these games. I no longer can play these games longer. I have always liked these big games that pull you in like big RPGs but now with a kid, I don't really have the time to do that. Matt Stauffer: You don't have much time. Marcel Pociot: I don't want to play for five consecutive hours and if I come back after a few days, I don't want an hour to find out where was I or what I'm supposed to do. Matt Stauffer: That's why I loved Nintendo, that's one of many reasons why I love Nintendo. Because for people with families, Nintendo is good. A, because there's games that you can play with your kids, and also user interfaces you can play with the kids, but B, there's games that are like you can dip in and out. Marcel Pociot: Yes, you can just pick them up and then play for half an hour and then your're done. Matt Stauffer: Even Zelda as an extremely immersive game. You can still pick it up for 20 minutes here or there. Marcel Pociot: That is also too big for me. Matt Stauffer: Zelda is. I mean I can understand it. I've played more video games when I played through-- I'm not done with Zelda, but I played more video games when I first got the Switch and Zelda than I have in years. And even so, it was 20 minutes here and there. Because of the Switch, I just put it down and it just pauses it, but I hear you. Super Mario Odyssey is pretty small. And of course, Mario Kart I play with my son nearly every day. Marcel Pociot: Yes, [laughs] me too, yes. Matt Stauffer: Nice. Marcel Pociot: So now we have this rule that we play every other day. [laughter]. Matt Stauffer: Yes, yes. Every night became a problem, so I was like, "You need to get off." The good thing is my son is super, super active. I was a lazy kid, I didn't want to do anything, I just wanted to sit around. My kid, if I let him, we would be outside running around every day, I don't don't have any problems. Marcel Pociot: Yes, my son too. Yes, when I came home from work, usually the first thing that he would tell me was, "Okay, you can leave your shoes on, we go out and play some soccer." [laughter] Matt Stauffer: I love it, that's very cool. Yes, I think my biggest bummer about the neighborhood we live in right now is that-- the best thing about it is the houses are really close and everybody gets to know each other very well, so he's got tons of friends. But the bummer is the yards are so small that there's nowhere for us to play without getting in the car and driving somewhere. Like, play soccer or baseball or something like that. But what we end up doing is just running around in the house like crazy people anyway. Marcel Pociot: [laughs]. Matt Stauffer: It's his favorite game right now. Marcel Pociot: We have people living underneath so we can't do this all the time. Matt Stauffer: My son's favorite game right now is turn on some music really loud, some really hype pop music or something like that, and then run around and chase each other and throw bouncy balls at each other or try to tickle each other or something like that while the music plays really loud. I'm like, "Okay." Marcel Pociot: [laughs]. Yes, haven't done that in a while. Matt Stauffer: What keeps you from getting stuck when you're coding? Or what tools do you use, or what book or what languages. How do you keep either on a single problem, or on a single framework, or single language? What broadens your perspectives? Whether it's in the programming world, like some other programming language, or whether it's something about your family or your life. What helps you keep your brain out of just the really narrow focus of, "I work in one language, one package, all day long." What gives you inspiration? Marcel Pociot: Recently, when we had in mind that we're going to start the company, I focused a lot on the organizational things and on how to get this even up and running. During that time I was not that much focused on code, or on frameworks, or anything else, because it also meant for me just to get out of the comfort zone and start a company, and not have the safety as an employee. What I'm trying to tell is that, during this time, I sort of stepped away from being too close to the coding world a bit, and now I'm just catching up again. But I think it's mostly just talking to other people and exchanging with my business partner, things like that. It's not that I use other languages and look into them specifically to see new things, so it's not that I really have the plan on how to broaden my view. I don't know, I think it just happens this way. And if I'm stuck at a specific problem, I just try to go out for a bit and [chuckle] step away from the code. Matt Stauffer: Yes. All right. I feel like I promised every time that I'm not going to say I could talk for hours and then I do it every time anyway. Oh well, I failed, I did it. Marcel Pociot: [laughs]. Matt Stauffer: We are nearing time, so I don't want to start anything new and big. Are there any other big parts of you, your life, your motivation or your work that you feel like we haven't got a chance to cover? Marcel Pociot: No, I think we covered the important parts, most of all, yes. Matt Stauffer: Okay, I like it. What's your favorite candy? Marcel Pociot: Candy? [laughs]. After the whole Christmas candy mess-- we set ourselves as a family goal to not eat any candy for a week. Matt Stauffer: I like that. Marcel Pociot: My son is doing great. Matt Stauffer: [laughs]. He's doing better than you, huh? Marcel Pociot: Yes, right. [laughter] Marcel Pociot: I cheated but he doesn't know. Matt Stauffer: All right. Well, hopefully, he doesn't listen to this. Marcel Pociot: Well, he doesn't understand English. So-- Matt Stauffer: There you go, that's the way to do it. Reveal your secrets in the other language. Marcel Pociot: [laughs]. Yes. Marcel Pociot: But other than that-- favorite candy-- I'm mostly into some sour candy. Matt Stauffer: Like what? Marcel Pociot: Skittles in sour, they're pretty good. Matt Stauffer: Really? Skittle Sour-- I had no idea. Marcel Pociot: Yes. Matt Stauffer: All right, Skittle Sour, favorite candy. Marcel Pociot: How about you? Matt Stauffer: I ask this question to people all the time and I don't know if I know the answer. The first thing that came to my mind was Snickers. I think that I like candies with chocolate, and I think if it's chocolate plus some things that rounded it out, those are high in my list. I mean I really like Almond Joys, and Mounds as well. But I think Snickers is probably my top one. Marcel Pociot: We all like bread with Nutella, but is it really candy? Matt Stauffer: Yes, but I mean, it's basically candy. Marcel Pociot: Yes. [laughs]. Yes. Matt Stauffer: Yes. It's funny, my wife likes to put Nutella on sweet things. I'm like, "No, no, no, the Nutella is the sweet, I want it on bread or toast.", just plain piece of multi-grain bread, put some Nutella on top of it, good to go. Marcel Pociot: And peanut butter, and then you basically have Snickers. Matt Stauffer: Wait, do you put peanut butter and Nutella on the same thing? Marcel Pociot: Sure. That's literally Snickers, right? Matt Stauffer: Oh my god [whispers]. I had never thought of that. Alright last story and then I got to let you go. My dad worked for a German company when I was growing up, and he was the president of the US distributor of a German-based company. So he would fly over to Germany pretty frequently, and he would bring Levi's jeans and peanut butter to Germany, because it was hard for them to get, and he'd bring back German chocolate and Nutella, because it was hard for us to get. You can get Nutella in the grocery stores now, but back then you couldn't. And so, every time dad came home, we would get Nutella and we tried to keep these couple of jars of Nutella to last until the next time he went to Germany. Marcel Pociot: Okay. Next time I see you, can you get some Nutella? Matt Stauffer: Yes, I mean, we've got a lot of Nutella here, so you have to pick something up to trade with. Marcel Pociot: But not the German one. [laughs]. Matt Stauffer: Yes, it's true, it's true. All right, Marcel, this was a ton of fun talking to you. Thanks for taking some time. Thank you for BotMan, I'm seriously going to go distribute my son's podcasts using it. So you can expect me to bother you with requests for help sometime soon. Marcel Pociot: No problem. Thank you for inviting me. Matt Stauffer: How can people follow you? And, I guess, go start BotMan. What is following after you look like? Marcel Pociot: Well I think the easiest way to connect with me is on Twitter. Matt Stauffer: All right. I'll make sure your handle is linked to the show notes. Marcel Pociot: Okay. Or, if people want to talk about BotMan, I have the Slack team of BotMan where you can join, I think we're nearly 500 people in there. Matt Stauffer: All right, we'll link that in the show notes too. Got it. Marcel Pociot: Yes. Matt Stauffer: Cool. All right, well thanks for your time, was a pleasure talking to you. Until next time everyone. See you later. Marcel Pociot: Bye.
Som traditionen bjuder har pojkarna spelat in årets julavsnitt, det tredje i ordningen. Detta är ett actionpackat äventyr för hela familjen där lyssnarna bjuds på spänning, glädje och inspiration om hur deras liv kan bli ännu rikare, roligare och mer meningsfulla. Eller så handlar det om Star Wars, IP-telefoni, lite länktips, ytterligare funderingar runt Android, en “ny” jobbdator, BBS:er och Fidonet och något nytt som redaktionen är en aning skeptisk till: glöbbel. Tidigare julavsnitt 2016: Julafton på dödsstjärnan 2015: Saker min far lärt mig 01:48: Glöbbel - årets julfikatrend 04:40: App: the human story 08:25: The last jedi - spoilerfritt 11:29: Iphone och batteritid 14:07: Jocke har jobb-Mac igen 15:02: Lyssnarpost - bra Androidlurar? 20:29: Nätneutralitet - the BM story 25:28: Disney köper Fox 28:09: Fredriks bild 28:24: Filmtips: Baby driver 31:04: Poddtips: två avsnitt av Vector 34:11: Veckans URL:er 37:38: Jockes julafton har … eskalerat 39:44: BBS-nytt Länkar Länkar Webbplatsen Glöbbel Årets Blossa Frontdoor App: the human story Nätneutralitet Disney köper det mesta av Fox Baby driver - Fredriks filmtips The driver Vector - avsnitten om Marsedit och Drafts Marsedit Drafts wtfismyip.com Kodsnack om Swift Cenny fuckingblocksyntax.com 0fg.se Taylors & Jones TPCS Nikom Tosser Delta city SynergyClient - fjärrstyr en Amiga! Retrodatorer - håll utkik efter matnyttiga BBS-artiklar! Teletek Joaquim Homrighausen Binkp Binklyterm Binkd Turbo Pascal Free Pascal RTFM EMSI/IEMSI som det beskrevs i FSC-056 av Joaquim Homrighausen i maj 1991. Zmodem Hasselbacken Fullständig avsnittsinformation finns här: https://www.bjoremanmelin.se/podcast/avsnitt-106-amiga-as-a-service.html.
MAS 018: Gil Fink This episode is a My Angular Story with Gil Fink. Listen to learn more about Gil and his story! [00:02:16] Introduction to Gil Gil is the CEO of Sparxys, a consulting company he created. wrote a book called the Pro Single Page Application Development. He was a co-organizer of Angular App, which is a conference in Israel, which was held just last month. [00:04:39] How did you get into programming? Gil first owned a computer at ten years old. It was an IBM compatible computer with an MS-DOS operating system. He used it to play games like Pac Man, which he would attempt to edit and claims was the first time he tried to program anything. Gil wanted to learn computer science in high school. In grades tenth through twelfth, he learned Turbo Pascal and Excel. During this time he wrote unprofessional programs. He went to college for computer science. His first job as a web developer was helping to write a government portal for the Israeli government. What ultimately led him to computer science is the curiosity to know how things that operate hardware work. “If you’re curious about something, go and learn it.” [00:12:12] How did you go from government to working with Angular? Gil describes his story to Angular as one of progression and “moving on with everybody else.” He worked with the government project from 2005-2007. He was then involved with a web app project using jQuery and Backbone. The VP while he was at the job asked why he was using backbone, so Gil researched Angular. It looked like it included everything he needed. After reading more on it, he began using it and created an Angular JS course for his employer. He learned it through creating that course. [00:15:35] What was it about Angular that made you decide you wanted to be doing it? Gil thinks the community is one of the best things about Angular. The team is approachable. Gil had issues with other libraries and did not get the same vibe from people. They were not as welcoming and eager to help as they are in the Angular community. There is a lot of collaboration. The tools and frameworks around Angular are developing and people help each other as they develop. [00:23:30] Contributions Gil has made several contributions to the Angular community. Most recently he has created the Angular 2-indexeddb service. It is a library that can be found GitHub. He has written directives in the past that people use and is amazed that people use things that he wrote. He wrote Story.js, another library that wrapped all storages in one browser, which he does recommend anyone use. He has published several online videos and was featured on an Angular Connect workshop recently. Gil is always willing to help mentor other developers. He has started writing blog posts in order to help junior freelancers. Currently he is involved with two start up accelerators. They are Google Launchpad Accelerator and University Accelerator. Both are where people come with ideas and they help make their ideas startups. Picks Gil: Goodness Squad Angular2-indexeddb Library Spider-Man Homecoming Charles: The Millionaire Mind The Freelancer Show Toastmasters club Angular Dev Summit Links Twitter http://gilfink.azurewebsites.net/ Medium Sparxys
MAS 018: Gil Fink This episode is a My Angular Story with Gil Fink. Listen to learn more about Gil and his story! [00:02:16] Introduction to Gil Gil is the CEO of Sparxys, a consulting company he created. wrote a book called the Pro Single Page Application Development. He was a co-organizer of Angular App, which is a conference in Israel, which was held just last month. [00:04:39] How did you get into programming? Gil first owned a computer at ten years old. It was an IBM compatible computer with an MS-DOS operating system. He used it to play games like Pac Man, which he would attempt to edit and claims was the first time he tried to program anything. Gil wanted to learn computer science in high school. In grades tenth through twelfth, he learned Turbo Pascal and Excel. During this time he wrote unprofessional programs. He went to college for computer science. His first job as a web developer was helping to write a government portal for the Israeli government. What ultimately led him to computer science is the curiosity to know how things that operate hardware work. “If you’re curious about something, go and learn it.” [00:12:12] How did you go from government to working with Angular? Gil describes his story to Angular as one of progression and “moving on with everybody else.” He worked with the government project from 2005-2007. He was then involved with a web app project using jQuery and Backbone. The VP while he was at the job asked why he was using backbone, so Gil researched Angular. It looked like it included everything he needed. After reading more on it, he began using it and created an Angular JS course for his employer. He learned it through creating that course. [00:15:35] What was it about Angular that made you decide you wanted to be doing it? Gil thinks the community is one of the best things about Angular. The team is approachable. Gil had issues with other libraries and did not get the same vibe from people. They were not as welcoming and eager to help as they are in the Angular community. There is a lot of collaboration. The tools and frameworks around Angular are developing and people help each other as they develop. [00:23:30] Contributions Gil has made several contributions to the Angular community. Most recently he has created the Angular 2-indexeddb service. It is a library that can be found GitHub. He has written directives in the past that people use and is amazed that people use things that he wrote. He wrote Story.js, another library that wrapped all storages in one browser, which he does recommend anyone use. He has published several online videos and was featured on an Angular Connect workshop recently. Gil is always willing to help mentor other developers. He has started writing blog posts in order to help junior freelancers. Currently he is involved with two start up accelerators. They are Google Launchpad Accelerator and University Accelerator. Both are where people come with ideas and they help make their ideas startups. Picks Gil: Goodness Squad Angular2-indexeddb Library Spider-Man Homecoming Charles: The Millionaire Mind The Freelancer Show Toastmasters club Angular Dev Summit Links Twitter http://gilfink.azurewebsites.net/ Medium Sparxys
MAS 018: Gil Fink This episode is a My Angular Story with Gil Fink. Listen to learn more about Gil and his story! [00:02:16] Introduction to Gil Gil is the CEO of Sparxys, a consulting company he created. wrote a book called the Pro Single Page Application Development. He was a co-organizer of Angular App, which is a conference in Israel, which was held just last month. [00:04:39] How did you get into programming? Gil first owned a computer at ten years old. It was an IBM compatible computer with an MS-DOS operating system. He used it to play games like Pac Man, which he would attempt to edit and claims was the first time he tried to program anything. Gil wanted to learn computer science in high school. In grades tenth through twelfth, he learned Turbo Pascal and Excel. During this time he wrote unprofessional programs. He went to college for computer science. His first job as a web developer was helping to write a government portal for the Israeli government. What ultimately led him to computer science is the curiosity to know how things that operate hardware work. “If you’re curious about something, go and learn it.” [00:12:12] How did you go from government to working with Angular? Gil describes his story to Angular as one of progression and “moving on with everybody else.” He worked with the government project from 2005-2007. He was then involved with a web app project using jQuery and Backbone. The VP while he was at the job asked why he was using backbone, so Gil researched Angular. It looked like it included everything he needed. After reading more on it, he began using it and created an Angular JS course for his employer. He learned it through creating that course. [00:15:35] What was it about Angular that made you decide you wanted to be doing it? Gil thinks the community is one of the best things about Angular. The team is approachable. Gil had issues with other libraries and did not get the same vibe from people. They were not as welcoming and eager to help as they are in the Angular community. There is a lot of collaboration. The tools and frameworks around Angular are developing and people help each other as they develop. [00:23:30] Contributions Gil has made several contributions to the Angular community. Most recently he has created the Angular 2-indexeddb service. It is a library that can be found GitHub. He has written directives in the past that people use and is amazed that people use things that he wrote. He wrote Story.js, another library that wrapped all storages in one browser, which he does recommend anyone use. He has published several online videos and was featured on an Angular Connect workshop recently. Gil is always willing to help mentor other developers. He has started writing blog posts in order to help junior freelancers. Currently he is involved with two start up accelerators. They are Google Launchpad Accelerator and University Accelerator. Both are where people come with ideas and they help make their ideas startups. Picks Gil: Goodness Squad Angular2-indexeddb Library Spider-Man Homecoming Charles: The Millionaire Mind The Freelancer Show Toastmasters club Angular Dev Summit Links Twitter http://gilfink.azurewebsites.net/ Medium Sparxys
MJS 026 Chris Coyier This week’s episode is a My JavaScript Story with Chris Coyier. He is from the ShopTalk Show and CodePen. Listen to learn more about Chris! How did you get started programming? Chris has an atypical story. good time in life. He is from a small town in Madison, Wisconsin and had a very privileged upbringing. He went to a nice high school that had a programming elective in his high school. He took a class that taught Turbo Pascal and loved it. He had a lot of fun doing it and became set on doing it in college. How do you go from that to professional web developer? Have to give up on it first. He almost got a degree in university management computer systems, which was more management focused than programming focused. He tried and gave up on Java. He then tried graphic design and ended up getting a degree in that. He got into digital prepress at print jobs where he designed documents. It was fun but it was not as fun as being a “real programmer” would be in his mind. He then got a job at an agency doing web developer work. During this time JavaScript was not on his radar. How do you get from front-end work to building something like CodePen and starting a front-end podcast? He has made his career his hobby. He loves doing this stuff. When he was building websites for the first time he started CSS tricks. It became really fun. He grew it over ten years. Because it’s his career and hobby he got better over time. All of his time was spent helping friends, writing, or at conferences. He then decided to build CodePen with some of his friends. What are you working on these days? Chris wants to be careful not to be working on too many things at once. His top priority is CodePen, which he says is hard to keep up with what developers want there. The second priority is CSS tricks. He likes to publish quality articles for people to read. This third priority is his podcast. What’s the thing you’ve done that you’re the proudest of? CodePen is what has been so continually rewarding. This last month he is all money accounted for. He is really proud of CodePen because they made a company from nothing. He and his coworkers have made the podcast over a decade of growing an audience and it feels entrepreneurial. Charles’ most proud thing is the decision to go full time with his podcast for the last year and a half. Picks Chris: CodePen https://codepen.io/ ShopTalk www.shoptalkshow.com Alien Covenant http://www.alien-covenant.com/ Charles: www.getacoderjob.com React Native www.reactnative.com www.gocd.org JS Dev Summit https://jsdevsummit.com/ Links GitHub https://github.com/chriscoyier Twitter https://twitter.com/chriscoyier https://chriscoyier.net/
MJS 026 Chris Coyier This week’s episode is a My JavaScript Story with Chris Coyier. He is from the ShopTalk Show and CodePen. Listen to learn more about Chris! How did you get started programming? Chris has an atypical story. good time in life. He is from a small town in Madison, Wisconsin and had a very privileged upbringing. He went to a nice high school that had a programming elective in his high school. He took a class that taught Turbo Pascal and loved it. He had a lot of fun doing it and became set on doing it in college. How do you go from that to professional web developer? Have to give up on it first. He almost got a degree in university management computer systems, which was more management focused than programming focused. He tried and gave up on Java. He then tried graphic design and ended up getting a degree in that. He got into digital prepress at print jobs where he designed documents. It was fun but it was not as fun as being a “real programmer” would be in his mind. He then got a job at an agency doing web developer work. During this time JavaScript was not on his radar. How do you get from front-end work to building something like CodePen and starting a front-end podcast? He has made his career his hobby. He loves doing this stuff. When he was building websites for the first time he started CSS tricks. It became really fun. He grew it over ten years. Because it’s his career and hobby he got better over time. All of his time was spent helping friends, writing, or at conferences. He then decided to build CodePen with some of his friends. What are you working on these days? Chris wants to be careful not to be working on too many things at once. His top priority is CodePen, which he says is hard to keep up with what developers want there. The second priority is CSS tricks. He likes to publish quality articles for people to read. This third priority is his podcast. What’s the thing you’ve done that you’re the proudest of? CodePen is what has been so continually rewarding. This last month he is all money accounted for. He is really proud of CodePen because they made a company from nothing. He and his coworkers have made the podcast over a decade of growing an audience and it feels entrepreneurial. Charles’ most proud thing is the decision to go full time with his podcast for the last year and a half. Picks Chris: CodePen https://codepen.io/ ShopTalk www.shoptalkshow.com Alien Covenant http://www.alien-covenant.com/ Charles: www.getacoderjob.com React Native www.reactnative.com www.gocd.org JS Dev Summit https://jsdevsummit.com/ Links GitHub https://github.com/chriscoyier Twitter https://twitter.com/chriscoyier https://chriscoyier.net/
MJS 026 Chris Coyier This week’s episode is a My JavaScript Story with Chris Coyier. He is from the ShopTalk Show and CodePen. Listen to learn more about Chris! How did you get started programming? Chris has an atypical story. good time in life. He is from a small town in Madison, Wisconsin and had a very privileged upbringing. He went to a nice high school that had a programming elective in his high school. He took a class that taught Turbo Pascal and loved it. He had a lot of fun doing it and became set on doing it in college. How do you go from that to professional web developer? Have to give up on it first. He almost got a degree in university management computer systems, which was more management focused than programming focused. He tried and gave up on Java. He then tried graphic design and ended up getting a degree in that. He got into digital prepress at print jobs where he designed documents. It was fun but it was not as fun as being a “real programmer” would be in his mind. He then got a job at an agency doing web developer work. During this time JavaScript was not on his radar. How do you get from front-end work to building something like CodePen and starting a front-end podcast? He has made his career his hobby. He loves doing this stuff. When he was building websites for the first time he started CSS tricks. It became really fun. He grew it over ten years. Because it’s his career and hobby he got better over time. All of his time was spent helping friends, writing, or at conferences. He then decided to build CodePen with some of his friends. What are you working on these days? Chris wants to be careful not to be working on too many things at once. His top priority is CodePen, which he says is hard to keep up with what developers want there. The second priority is CSS tricks. He likes to publish quality articles for people to read. This third priority is his podcast. What’s the thing you’ve done that you’re the proudest of? CodePen is what has been so continually rewarding. This last month he is all money accounted for. He is really proud of CodePen because they made a company from nothing. He and his coworkers have made the podcast over a decade of growing an audience and it feels entrepreneurial. Charles’ most proud thing is the decision to go full time with his podcast for the last year and a half. Picks Chris: CodePen https://codepen.io/ ShopTalk www.shoptalkshow.com Alien Covenant http://www.alien-covenant.com/ Charles: www.getacoderjob.com React Native www.reactnative.com www.gocd.org JS Dev Summit https://jsdevsummit.com/ Links GitHub https://github.com/chriscoyier Twitter https://twitter.com/chriscoyier https://chriscoyier.net/
Making Rust Better Rust as the fusion of systems and high-level programming languages, and the RLS. Show Notes The survey Language adoption: Guido van Rossum and Python Matz (Yukihiro Matsumoto) and Ruby Dart Building the Rust Language Service: Racer rustw Language Server Protocol Demo at RustConf 2016 Anders Hejlsberg – designer or lead developer of Turbo Pascal, Delphi, C#, and TypeScript Serde Roadmap GitHub Project Language Server Protocol plugins RLS reference VS Code plugin Kalita Alexey’s vscode-rust langserver.org The 2017 Rust Roadmap Improved match ergonomics around references const generics RFC #1931 Sponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Ben Whitley Charlie Egan Chris Jones Chris Palmer Christopher Giffard Dan Abrams Daniel Collin Derek Morr Eugene Bulkin Henri Sivonen Jakub “Limeth” Hlusička Jonathan Turner Jordan Henderson Jupp Müller Justin Ossevoort Karl Hobley Keith Gray Kilian Rault Lachlan Collins Luca Schmid Matt Rudder Matthew Piziak Max Jacobson Micael Bergeron Ovidiu Curcan Pascal Hertleif Patrick O’Doherty Peter Tillemans Philipp Keller Ralph Giles (“rillian”) Raph Levien reddraggone9 Steven Murawski Stuart Hinson Ty Overby Tyler Harper Vesa Kaihlavirta Warren Harper William Roe Zaki (Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!) Become a sponsor Patreon Venmo Dwolla Cash.me Flattr PayPal.me Contact New Rustacean: Twitter: @newrustacean Email: hello@newrustacean.com Chris Krycho GitHub: chriskrycho Twitter: @chriskrycho
Tom Eckmann, President of Kyan Software Tom Eckmann was president and co-founder of Kyan Software. Kyan's flagship product was Kyan Pascal, an implementation of the Pascal programming language which was available for the Apple II, Atari 8-bits, and Commodore 64/128 computers. This interview took place on May 19, 2017. Teaser quote: "We sneered at Turbo Pascal because it was non-compliant, there were all of these un-pure features. ... He [Philippe Kahn] just looks looks at me and goes, 'Nobody gives a damn.'" Kyan Software at AtariMania Antic magazine review of Kyan Pascal Kyan Pascal at Internet Archive
Vor 20 Jahren wäre das MS-DOS Adventure 'The Dutchmans Return' erschienen. Grund genug für ein kommentiertes play-trough Video.
Vor 20 Jahren wäre das MS-DOS Adventure 'The Dutchmans Return' erschienen. Grund genug für ein kommentiertes play-trough Video.
Era il 1995 quando Delphi, linguaggio e ambiente di sviluppo prodotto da Borland e discendente del celebre Turbo Pascal, ha visto la luce, avviando un percorso di continua innovazione che cercheremo di esplorare in questa prima puntata del podcast. Prima di questo, si parlerà di Delphi Podcast con una breve introduzione dell’iniziativa, del perché è nato, delle idee per il futuro e di tutti i riferimenti che gli ascoltatori possono sfruttare per commentare le puntate, suggerire nuovi argomenti e anche proporsi per parlarne. Qui di seguito sono riportati i link citati nel corso della puntata: Sito ufficiale del podcast:http://www.delphipodcast.com Raccolta tweet della Delphi Weekhttps://twitter.com/hashtag/DelphiWeek Raccolta foto della Delphi Weekhttp://delphiweek.tumblr.com/ Sito ufficiale Embarcaderohttp://www.embarcadero.com Pagina Embarcadero dedicata a Delphi e download versione trialhttp://www.embarcadero.com/products/delphi Sito ufficiale di App Method e downloadhttp://www.appmethod.com/
本期由Kevin Wang主持, 和为知笔记的CTO老魏聊聊他的入行经历,以及他们产品中的一些技术选型。 Pascal Fortran Tubo C Tubo Pascal WPS Office 为知笔记 Markdown LaTex FrameMaker InDesign WizQTClient iconfont Paradigms of Computer Programming Special Guest: 老魏.
A look at Turbo Pascal 3 for CP/M - the last version of Turbo Pascal to be released on that classic operating system.
Nous discutons avec Karell Ste-Marie de son expérience avec Azure. Son entreprise vient de terminer la transition de leur produit Idealink, qui est offert maintenant “On Demand” sur Azure. Karell Ste-Marie est Officier Technique Principal (CIO) chez BrainBank Inc qui compte d'important clients tel que Johnson and Johnson, Blue Cross Blue Shield, Northwestern Mutual et d'autres de même importance. BrainBank Inc utilise la platforme .NET pour ses produits et depuis peu offre le produit Idealinksur le cloud avec Azure. Depuis son initiation a la programmation sur un Apple II+ avec 32 Ko de RAM, Karell a travaillé sur diverse platformes et programmé en Basic, DBase, Clipper, Turbo Pascal, Visual Basic, SQL et VB.NET et Azure. Liens Azure Actualité: Microsoft cuts Windows Azure cloud storage prices
Here is the last version of June Gloom I will post. Today's run through the algorithm is a milepost of sorts. I finally was able to generate the whole thing without having to run either the preprocessor or Csound in that dreadful XP box on my Windows 7 laptop. Today I finished the port of the preprocessor to Free Pascal from Turbo Pascal. Most of the problems along the way were due to failing to check for Nil pointers and out of bounds arrays. Apparently Turbo Pascal circa 1989 let me do some bad things. I fixed those and the program compiled. After earlier porting the Csound code to a version of Csound that runs in Windows 7, I'm now free of the XP box. Today's post is the result. Nothing is substantively different, except it's another round through the algorithm, so everything has changed. Download or Play it here. Subscribe here:
Here is one more version of the June Gloom piece I've been working on. For the past eight years I've used an older version of Csound (4.19 from 2005) that only runs on Windows XP. I moved to a new version of Windows, and the old version stopped running. So I obtained a current version, Csound version (5.17.11 from May 2012). To my delight it worked with all my old opcodes with only minor problems with the install. This version of the piece was made with the Windows 7 version of Csound 5.17.11. My preprocessor, written in Turbo Pascal (filedate 1989), is another story. Turbo Pascal won't work in the current version of Windows 7. I had to create a virtual machine running XP, and that is working, but poorly. All things considered, my $90 investment in Turbo Pascal was worth it, since I have been able to use it for 23 years. My next task is to try to port the Turbo Pascal to Free Pascal. My first attempts resulted in code that compiles with minor changes, but fails at run time reporting memory issues. That conversion will take much longer. Download or Play it here. Subscribe here: Source code Input to the Csound: drum12Second stage for volume control: drum12aThird stage for convolution: convolv
In this episode we interviewed Anders Hejlsberg, Technical Fellow with Microsoft and Chief Architect of the C# programming language.We talk about his past involvement in creating Turbo Pascal and later Delphi. Anders tells us about the evolution of the C# language and about some of the design decisions for C# and the .Net framework. Links for this podcast Anders Hejlsberg's Wikipedia entry Turbo Pascal Delphi Presentation Devdays 2010: C# 4.0 and beyond Keynote TechDays 2010 : Trends and future directions in programming languages This podcast is in English - Deze podcast is in het Engels
Digital TV converter box, Profiles in IT (Anders Hejlsberg, Turbo Pascal developer, C# and .Net architect), maintaining US competitive position (comments by Nicholas M. Donofrio, IBM VP, and Newt Gingrich, Republican thought leader), ICANN and IANA websites hacked, defending against cybersquatting (ICANN's Uniform Domain Name Dispute Resolution Policy, Anticybersquatting Consumer Protection Act), website of the week (Linux online), shortage of night vision goggles, FBI cracks phishing ring, and Food Science (making a soufle). This show originally aired on Saturday, June 28, 2008, at 9:00 AM EST on 3WT Radio (WWWT).
Digital TV converter box, Profiles in IT (Anders Hejlsberg, Turbo Pascal developer, C# and .Net architect), maintaining US competitive position (comments by Nicholas M. Donofrio, IBM VP, and Newt Gingrich, Republican thought leader), ICANN and IANA websites hacked, defending against cybersquatting (ICANN's Uniform Domain Name Dispute Resolution Policy, Anticybersquatting Consumer Protection Act), website of the week (Linux online), shortage of night vision goggles, FBI cracks phishing ring, and Food Science (making a soufle). This show originally aired on Saturday, June 28, 2008, at 9:00 AM EST on 3WT Radio (WWWT).
Software Engineering Radio - The Podcast for Professional Software Developers
In this episode we have the pleasure of talking to Anders Hejlsberg, Chief Language Strategist at Microsoft. We started by discussing his more distant past, namely, his involvement with Turbo Pascal and Borland's Delphi. We then looked at the influences Delphi had on C# and how C# evolved from Delphi. In the next section we discussed a couple of general language design issues, among them components and checked vs. unchecked exceptions. Next, we discussed interesting issues about languages of the future, static vs. dynamic typing, functional programming, meta programming as well as the importance of good support for concurrency. We concluded the discussion by looking at the interplay between languages and IDEs.
Software Engineering Radio - The Podcast for Professional Software Developers
In this episode we have the pleasure of talking to Anders Hejlsberg, Chief Language Strategist at Microsoft. We started by discussing his more distant past, namely, his involvement with Turbo Pascal and Borland's Delphi. We then looked at the influences Delphi had on C# and how C# evolved from Delphi. In the next section we discussed a couple of general language design issues, among them components and checked vs. unchecked exceptions. Next, we discussed interesting issues about languages of the future, static vs. dynamic typing, functional programming, meta programming as well as the importance of good support for concurrency. We concluded the discussion by looking at the interplay between languages and IDEs.
Software Engineering Radio - The Podcast for Professional Software Developers
In this episode we have the pleasure of talking to Anders Hejlsberg, Chief Language Strategist at Microsoft. We started by discussing his more distant past, namely, his involvement with Turbo Pascal and Borland's Delphi. We then looked at the influences Delphi had on C# and how C# evolved from Delphi. In the next section we discussed a couple of general language design issues, among them components and checked vs. unchecked exceptions. Next, we discussed interesting issues about languages of the future, static vs. dynamic typing, functional programming, meta programming as well as the importance of good support for concurrency. We concluded the discussion by looking at the interplay between languages and IDEs.
Greetings, Retrocomputing Fans! Happy to have you here for show #3! This episode of the Retrobits Podcast focuses on a couple of popular languages from the 80s, and open-source languages in active development that carry on and extend the legacy of those languages. Here are some of the URLs referenced in the show: The magazine New Scientist had a great article on vintage computing. Blake Patterson scribes the Byte Cellar Blog on retro computing. Interesting stuff, and a very well-decorated retro room! The Vintage Computer Festival is an international event that celebrates the history of computing. It's a show for retrocomputing! I'm hoping to go to the 8.0 event in November 2005. The Computer History Museum is home to one of the largest collections of computing artifacts in the world. Borland maintains a Museum where old version of the Turbo languages can be downloaded. The Free Pascal project carries on Turbo Pascal and Delphi compatible legacy today. The xHarbour project provides an extended xBase compiler. Be sure to send us any comments, questions or feedback to retrobits@gmail.com Our Theme Song is "Sweet" from the "Re-Think" album by Galigan Thanks for listening! - Earl