Podcast appearances and mentions of Brian Kernighan

  • 34PODCASTS
  • 64EPISODES
  • 45mAVG DURATION
  • ?INFREQUENT EPISODES
  • Jan 7, 2025LATEST
Brian Kernighan

POPULARITY

20172018201920202021202220232024


Best podcasts about Brian Kernighan

Latest podcast episodes about Brian Kernighan

David Bombal
#485: FREE Programming courses (Python, C, SQL and more)

David Bombal

Play Episode Listen Later Jan 7, 2025 70:28


Change your life in 2025! You have access to fantastic training from the amazing Dr Chuck - no excuses!! // Python for Everybody // Python for Everybody: https://www.py4e.com/ Python for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Python for Everybody - Full Universit... Free Python Book: http://do1.dr-chuck.com/pythonlearn/E... Dr Chuck's Website: https://www.dr-chuck.com/ Free Python Book options: https://www.py4e.com/book // C for Everybody Course // Free C Programming Course https://www.cc4e.com/ Free course on YouTube (freeCodeCamp): • Dr. Chuck reads C Programming (the cl... C Programming for Everybody on Coursera: https://www.coursera.org/specializati... // C book Audio by Dr Chuck // https://www.cc4e.com/podcast // Django for Everybody // Django for Everybody: https://www.dj4e.com/ Django for Everybody for on Coursera: https://www.coursera.org/specializati... YouTube: • Django For Everybody - Full Python Un... // PostgreSQL for Everybody // PostgreSQL for Everybody: https://www.pg4e.com/ PostgreSQL for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Welcome to PostgreSQL for Everybody -... // Web Applications for Everybody // YouTube: • Web Applications for Everybody Course... Web Applications for Everybody: https://www.wa4e.com/ Web Applications for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Welcome to Web Applications for Every... // Books // The C Programming Language by Brian Kernighan and Dennis Ritchie (the 1984 Second Ed and 1978 First Ed): https://amzn.to/3G0HSkU // MY STUFF // https://www.amazon.com/shop/davidbombal // SOCIAL // Discord: discord.com/invite/usKSyzb Twitter: www.twitter.com/davidbombal Instagram: www.instagram.com/davidbombal LinkedIn: www.linkedin.com/in/davidbombal Facebook: www.facebook.com/davidbombal.co TikTok: tiktok.com/@davidbombal // Dr Chuck Social // Website: https://www.dr-chuck.com/ Twitter: / drchuck YouTube: / csev Coursera: https://www.coursera.org/instructor/d... // MENU // 0:00 - Coming up 01:33 - How A.I. is affecting education 04:25 - Using A.I. to help students learn 08:11 - A.I. will fail you // Using A.I. to cheat in the real-world 19:40 - The Golden Age of A.I. and how it will get worse 24:51 - Is it worth it becoming a programmer in 2025 27:15 - Will A.I. replace programmers? 29:12 - Programming as a career choice 36:52 - A.I. is becoming a hardware problem 40:28 - Expectations of the younger generation 44:40 - The Master Programmer explained // Higher education is changing 52:03 - The Master Programmer courses and how to get started 56:23 - Learning JavaScript 01:09:37 - Conclusion Please note that links listed may be affiliate links and provide me with a small percentage/kickback should you use them to purchase any of the items listed or recommended. Thank you for supporting me and this channel!

Book Overflow
Brian Kernighan Reflects on Unix: A History and a Memoir

Book Overflow

Play Episode Listen Later Nov 11, 2024 66:37


In this special episode of Book Overflow, Brian Kernighan once again joins Carter and Nathan, this time to discuss his book Unix: A History and a Memoir. Join them as Brian recounts what it was like working at Bell Labs, how it feels to have contributed so much to the world of computing, and whether or not he thinks creating a big idea like Unix is still possible! -- Books Mentioned in this Episode -- Note: As an Amazon Associate, we earn from qualifying purchases. ---------------------------------------------------------- Unix: A History and a Memoir https://amzn.to/3YVnlYv (Paid Link) ---------------- Spotify: https://open.spotify.com/show/5kj6DLCEWR5nHShlSYJI5L Apple Podcasts: https://podcasts.apple.com/us/podcast/book-overflow/id1745257325 X: https://x.com/bookoverflowpod Carter on X: https://x.com/cartermorgan Nathan's Functionally Imperative: www.functionallyimperative.com ---------------- Book Overflow is a podcast for software engineers, by software engineers dedicated to improving our craft by reading the best technical books in the world. Join Carter Morgan and Nathan Toups as they read and discuss a new technical book each week! The full book schedule and links to every major podcast player can be found at https://www.bookoverflow.io

Book Overflow
Keeping Your Codebase Clean - Tidy First? by Kent Beck

Book Overflow

Play Episode Listen Later Nov 4, 2024 75:47


In this episode of Book Overflow, Carter and Nathan discuss Tidy First? by Kent Beck. Join them as they discuss when you should prioritize tidying your code over feature improvements, what tidying means, and the Beck's thoughts on software and the time value of money! -- Books Mentioned in this Episode -- Note: As an Amazon Associate, we earn from qualifying purchases. ---------------------------------------------------------- Tidy First?: A Personal Exercise in Empirical Software Design by Kent Beck https://amzn.to/40uOEtL (paid link) Refactoring: Improving the Design of Existing Code (2nd Edition) by Martin Fowler https://amzn.to/3C9d5mq (paid link) Building Evolutionary Architectures: Automated Software Governance by Neal Ford, Rebecca Parsons, Patrick Kua, Pramod Sadalage https://amzn.to/4fmoIVC (paid link) A Philosophy of Software Design, 2nd Edition by John Ousterhout https://amzn.to/4ecmYgv (paid link) The Practice of Programming by Brian Kernighan, Rob Pike https://amzn.to/4fuMP4b (paid link) ---------------- 00:00 Intro 03:14 About the Book 05:41 Thoughts on the Book 11:17 Techniques and Approaches for Tidying (Part 1) 36:20 How to prioritize and manage tidying tasks (Part 2) 47:30 Optionality, Reversibility and The Philosophy of Tidying (Part 3) 01:05:38 Final Thoughts ---------------- Spotify: https://open.spotify.com/show/5kj6DLCEWR5nHShlSYJI5L Apple Podcasts: https://podcasts.apple.com/us/podcast/book-overflow/id1745257325 X: https://x.com/bookoverflowpod Carter on X: https://x.com/cartermorgan Nathan's Functionally Imperative: www.functionallyimperative.com ---------------- Book Overflow is a podcast for software engineers, by software engineers dedicated to improving our craft by reading the best technical books in the world. Join Carter Morgan and Nathan Toups as they read and discuss a new technical book each week! The full book schedule and links to every major podcast player can be found at https://www.bookoverflow.io

Book Overflow
The Legacy of Unix - Unix: A History and a Memoir by Brian Kernighan

Book Overflow

Play Episode Listen Later Oct 21, 2024 83:55


In this episode of Book Overflow, Carter and Nathan discuss Unix: A History and a Memoir by Brian Kernighan. Brian Kernighan, one of the inventors of Unix, discusses in detail how the idea came to be, who the key contributors were, and what about Unix made it so revolutionary. -- Books Mentioned in this Episode -- Note: As an Amazon Associate, we earn from qualifying purchases. ---------------------------------------------------------- Unix: A History and a Memoir by Brian Kernighan https://amzn.to/40bB6mN (paid link) ---------------- Spotify: https://open.spotify.com/show/5kj6DLCEWR5nHShlSYJI5L Apple Podcasts: https://podcasts.apple.com/us/podcast/book-overflow/id1745257325 X: https://x.com/bookoverflowpod Carter on X: https://x.com/cartermorgan Nathan's Functionally Imperative: www.functionallyimperative.com ---------------- Book Overflow is a podcast for software engineers, by software engineers dedicated to improving our craft by reading the best technical books in the world. Join Carter Morgan and Nathan Toups as they read and discuss a new technical book each week! The full book schedule and links to every major podcast player can be found at https://www.bookoverflow.io

Book Overflow
"Recoding America" by Jennifer Pahlka

Book Overflow

Play Episode Listen Later Aug 12, 2024 68:58


In this episode of Book Overflow, Carter Morgan and Nathan Toups discuss "Recoding America: Why Government Is Failing in the Digital Age and How We Can Do Better" by Jennifer Pahlka. This book was personally recommended by Brian Kernighan and is about what processes and cultures make government technology so woefully inadequate. Join Carter and Nathan as they discuss agile vs. waterfall, the importance of a good business culture, and possible infringements on civil liberties!

Book Overflow
Brian Kernighan Reflects on "The Practice of Programming"

Book Overflow

Play Episode Listen Later Jul 10, 2024 59:04


In this very special episode of Book Overflow, Dr. Brian Kernighan, the author of "The Practice of Programming" joins us to discuss his experience writing the book! Tune in as he talks about his experience at Bell Labs, what it was like co-authoring the book with Rob Pike, his thoughts on LLMs and the future of programming, and more!

Book Overflow
"The Practice of Programming" by Brian Kernighan and Rob Pike

Book Overflow

Play Episode Listen Later Jun 12, 2024 70:11


In this inaugural episode of Book Overflow, Carter Morgan and Nathan Toups discuss "The Practice of Programming" by Brian Kernighan and Rob Pike. Written in 1999, Carter and Nathan discuss its timeless advice around style guides, interfaces, and debugging, as well as reflecting on how the software engineering industry has changed in the 25 years since it's been written.

David Bombal
#462: AI just replaced us with Devin... seriously? Dr Chuck!

David Bombal

Play Episode Listen Later Mar 22, 2024 34:03


Did the Devin AI just replace us and become the first fully autonomous AI software engineer? Dr Chuck tells us if this is fact or hype. // C for Everybody Course // Free C Programming Course https://www.cc4e.com/ Free course on YouTube (freeCodeCamp): • Learn C Programming with Dr. Chuck (f... C Programming for Everybody on Coursera: https://www.coursera.org/specializati... // C book Audio by Dr Chuck // https://www.cc4e.com/podcast // Python for Everybody // Python for Everybody: https://www.py4e.com/ Python for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Python for Everybody - Full Universit... Free Python Book: http://do1.dr-chuck.com/pythonlearn/E... Dr Chuck's Website: https://www.dr-chuck.com/ Free Python Book options: https://www.py4e.com/book // Django for Everybody // Django for Everybody: https://www.dj4e.com/ Django for Everybody for on Coursera: https://www.coursera.org/specializati... YouTube: • Django For Everybody - Full Python Un... // PostgreSQL for Everybody // PostgreSQL for Everybody: https://www.pg4e.com/ PostgreSQL for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Welcome to PostgreSQL for Everybody -... // Web Applications for Everybody // YouTube: • Web Applications for Everybody Course... Web Applications for Everybody: https://www.wa4e.com/ Web Applications for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: • Welcome to Web Applications for Every... // Books // The C Programming Language by Brian Kernighan and Dennis Ritchie (the 1984 Second Ed and 1978 First Ed): https://amzn.to/3G0HSkU // MY STUFF // https://www.amazon.com/shop/davidbombal // SOCIAL // Discord: / discord Twitter: / davidbombal Instagram: / davidbombal LinkedIn: / davidbombal Facebook: / davidbombal.co TikTok: / davidbombal YouTube: / davidbombal // Dr Chuck Social // Website: https://www.dr-chuck.com/ Twitter: / drchuck YouTube: / csev Coursera: https://www.coursera.org/instructor/d... // David's SOCIAL // Discord: discord.com/invite/usKSyzb Twitter: www.twitter.com/davidbombal Instagram: www.instagram.com/davidbombal LinkedIn: www.linkedin.com/in/davidbombal Facebook: www.facebook.com/davidbombal.co TikTok: tiktok.com/@davidbombal ai devin devin ai nvidia the first AI agent software engineer AI Agent Software Engineer gpu nvidia chatgpt artificial intelligence bard ai jobs lamda c dr chuck dr chuck master programmer python neural network machine learning deep learning sentient google ai artificial intelligence google ai sentient google ai lamda google ai sentient conversation google ai alive ai jobs Please note that links listed may be affiliate links and provide me with a small percentage/kickback should you use them to purchase any of the items listed or recommended. Thank you for supporting me and this channel! #ai #devin #nvidia

Algorithms + Data Structures = Programs
Episode 155: Don't Hurt Yourself (with C++) with Jonathan O'Connor

Algorithms + Data Structures = Programs

Play Episode Play 41 sec Highlight Listen Later Nov 10, 2023 35:49


In this episode, Conor and Bryce conclude their conversation with Jonathan O'Connor and chat about a plethora of topics: multiparadigm languages, Ratfor, airport lounges, Meeting C++, code::dive and more.Link to Episode 155 on WebsiteDiscuss this episode, leave a comment, or ask a question (on GitHub)TwitterADSP: The PodcastConor HoekstraBryce Adelstein LelbachAbout the Guest:Jonathan O'Connor in 1988 joined Glockenspiel, a small Irish company. C++ had no virtual destructors, but it did have a coroutine library! I spent 2 years teaching C++ and OOP. In 2000, he switched over to Java. But by 2010, he started 7 wonderful years writing in Ruby. In 2016, he returned to a completely different C++, where one never had to see a pointer if you didn't want to. These days he is helping to make the world a better place writing C++ code for LADE GmbH, a company building electric car charging infrastructure.Show NotesDate Recorded: 2023-10-18Date Released: 2023-11-10Jonathan O'Connor Meeting C++ BioRatforSoftware Tools by Brian Kernighan and P.J. PlaugerADSP Bingo BoardMeeting C++ Conferencecode::dive ConferenceIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

The Canadian Bitcoiners Podcast - Bitcoin News With a Canadian Spin
The CBP - Dr. Brian Kernighan, Professor of Computer Science at Princeton University

The Canadian Bitcoiners Podcast - Bitcoin News With a Canadian Spin

Play Episode Listen Later Aug 31, 2023 57:43


FRIENDS AND ENEMIES This week we're joined by the legendary Dr. Brian Kernighan. Dr. Kernighan storied career spans many decades and he working at the famous Bell Labs at the time when Unix and C was created. Dr. Kernighan also is tied to several books, including the first ever book about C - The C Programming Language. A thank you to friend of the show Daniel Kuhman for his time and expertise as well. #Programming #C #Unix Please press that like button and don't forget to subscribe :) From a couple of Canucks who like to talk about how Bitcoin will impact Canada. As always, none of the info is financial advice. ______________________________________________ This show is sponsored by: easyDNS - https://easydns.com/ EasyDNS is the best spot for Anycast DNS, domain name registrations, web and email services. They are fast, reliable and privacy focused. You can even pay for your services with Bitcoin! Apply coupon code 'CBPMEDIA' for 50% off initial purchase Bull Bitcoin - https://mission.bullbitcoin.com/cbp The CBP recommends Bull Bitcoin for all your BTC needs. With their new kyc-free options, there's never been a quicker, simpler, more private and (most importantly) cheaper way to acquire private Bitcoin. Use the link above for $20 bones, and take advantage of all Bull Bitcoin has to offer. --- Send in a voice message: https://podcasters.spotify.com/pod/show/canadian-bitcoiners/message

The Stephen Wolfram Podcast
History of Science & Technology Q&A (September 7, 2022)

The Stephen Wolfram Podcast

Play Episode Listen Later Jun 16, 2023 91:58


Stephen Wolfram answers questions from his viewers about the history science and technology as part of an unscripted livestream series, also available on YouTube here: https://wolfr.am/youtube-sw-qa Questions include: Did any ancient unit systems use base 10, or did they all use more easily dividable bases like 12, 20, 60, etc.? - What is the history of design patterns in software engineering? How did people come to them? - Did you ever meet Niklaus Wirth, Dennis Ritchie, Brian Kernighan, Alan Kay and/or Paul Allen? - Have Julia sets and Fatou sets played a significant role in the development of computer programming languages? - Agreed. Computer programming languages should be object oriented for the language and structure to make sense instead of coming off as abstract and convoluted, and also so they are easier to work with and learn. - Did eighteenth-century engineers/craftsmen make use of the paradigm of Newtonian mechanics? - Why is it that Isaac Newton spent most of his time trying to prove theological ideas? - When will Moore's law expire? Apple announced four-nanometer chip technology, and there has to be a limit. - I wonder whether the future will be multicomputational, but to be honest, computers nowadays are more than powerful enough for the average user.

OsProgramadores
E75 (EN) - Brian Kernighan - Professor of Computer Science at Princeton University

OsProgramadores

Play Episode Listen Later Mar 6, 2023 44:13


From Brian's Wikipedia page: Brian Wilson Kernighan is a Canadian computer scientist, he worked at Bell Labs and contributed to the development of Unix alongside Unix creators Ken Thompson and Dennis Ritchie. Kernighan's name became widely known through co-authorship of the first book on the C programming language (The C Programming Language) with Dennis Ritchie. Kernighan affirmed that he had no part in the design of the C language ("it's entirely Dennis Ritchie's work").[8] He authored many Unix programs, including ditroff. Kernighan is coauthor of the AWK and AMPL programming languages. The "K" of K&R C and of AWK both stand for "Kernighan". In collaboration with Shen Lin he devised well-known heuristics for two NP-complete optimization problems: graph partitioning and the travelling salesman problem. In a display of authorial equity, the former is usually called the Kernighan–Lin algorithm, while the latter is known as the Lin–Kernighan heuristic. Kernighan has been a Professor of Computer Science at Princeton University since 2000 and is the Director of Undergraduate Studies in the Department of Computer Science. In 2015, he co-authored the book The Go Programming Language. Links IBM 7094 Multics University of Toronto CTSS B programming Language BCPL Go ChatGPT PDP7 PL/1 Python Livros AWK The C Programming Language The Go Programming Language The Mythical Man-Month How to lie with statistics The Elements of Style OsProgramadores Site do OsProgramadores Grupo do OsProgramadores no Telegram

David Bombal
#412: Best Programming Language Ever? (Free Course)

David Bombal

Play Episode Listen Later Jan 5, 2023 44:31


Is this the best programming language ever created? How did it change the world in 1978 and affect developments such as the Apple M1? // Menu // 00:00 - Intro 00:46 - Dr Chuck's Courses 02:18 - C Program 04:40 - C Programming vs Rust Programming 06:58 - C Programming Language Book 08:52 - CC4E.com / Fair Use 13:01 - Amazon 18:58 - Learning Different Languages 24:58 - Garbage Collection 27:40 - C Programming Language Backstory 36:12 - Power PC to Intel 42:13 - Why You Need Master Programmer 42:57 - Did C Change the World? // Previous video // Computer Science isn't programming: https://youtu.be/z3o6yEzcnLc // C for Everybody Course // Free C Programming Course https://www.cc4e.com/ Free course on YouTube (freeCodeCamp): https://youtu.be/j-_s8f5K30I // C book Audio by Dr Chuck // https://www.cc4e.com/podcast // Python for Everybody // Python for Everybody: https://www.py4e.com/ Python for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://youtu.be/8DvywoWv6fI Free Python Book: http://do1.dr-chuck.com/pythonlearn/E... Dr Chuck's Website: https://www.dr-chuck.com/ Free Python Book options: https://www.py4e.com/book // Django for Everybody // Django for Everybody: https://www.dj4e.com/ Django for Everybody for on Coursera: https://www.coursera.org/specializati... YouTube: https://youtu.be/o0XbHvKxw7Y // PostgreSQL for Everybody // PostgreSQL for Everybody: https://www.pg4e.com/ PostgreSQL for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://www.youtube.com/watch?v=flRUu... // Web Applications for Everybody // YouTube: https://youtu.be/xr6uZDRTna0 Web Applications for Everybody: https://www.wa4e.com/ Web Applications for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://www.youtube.com/watch?v=tuXyS... // Books // The C Programming Language by Brian Kernighan and Dennis Ritchie (the 1984 Second Ed and 1978 First Ed): https://amzn.to/3G0HSkU // MY STUFF // https://www.amazon.com/shop/davidbombal // SOCIAL // Discord: https://discord.com/invite/usKSyzb Twitter: https://www.twitter.com/davidbombal Instagram: https://www.instagram.com/davidbombal LinkedIn: https://www.linkedin.com/in/davidbombal Facebook: https://www.facebook.com/davidbombal.co TikTok: http://tiktok.com/@davidbombal YouTube: https://www.youtube.com/davidbombal // Dr Chuck Social // Website: https://www.dr-chuck.com/ Twitter: https://twitter.com/drchuck/ YouTube: https://www.youtube.com/user/csev Coursera: https://www.coursera.org/instructor/d... c rust c vs rust c course free c course best programming language python python course python for beginners master programmer dr chuck dr chuck master programmer python mentorship google code interview google interview computer science python best course dr chuck python dr chuck python course learn to code software development software developer computer science software engineer software engineering how to learn programming free python course free python course online free python class free python tutorial free python training how to learn to code coding tutorials how to code learning to code learn to code for free learn to code python python jobs coding bootcamp google code interview python for beginners python full course python tutorial python projects python basic tutorial python programming python interview questions python course python basics open source #c #rust #drchuck

David Bombal
#411: 2023 Path to Master Programmer (for free)

David Bombal

Play Episode Listen Later Jan 5, 2023 19:50


This is your FREE path to becoming a master programmer! Use the links below to learn Python, C, Django, PostgreSQL and web programming for free! :) // Menu // 00:00 - Intro 01:24 - Dr Chuck's Courses 02:24 - Path to Master Programmer 07:00 - Path to Master Programmer Languages 10:41 - How to Get the Courses 14:24 - How Python Changed the World 15:42 - Do You Need a Degree? 18:01 - Financial Aid 19:39 - Conclusion // Previous video // Computer Science isn't programming: https://youtu.be/z3o6yEzcnLc Best programming language ever: https://youtu.be/aQ_XTBmCXS8 // C for Everybody Course // Free C Programming Course https://www.cc4e.com/ Free course on YouTube: https://www.youtube.com/watch?v=XteaW... // C book Audio by Dr Chuck // https://www.cc4e.com/podcast // Python for Everybody // Python for Everybody: https://www.py4e.com/ Python for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://youtu.be/8DvywoWv6fI Free Python Book: http://do1.dr-chuck.com/pythonlearn/E... Dr Chuck's Website: https://www.dr-chuck.com/ Free Python Book options: https://www.py4e.com/book // Django for Everybody // Django for Everybody: https://www.dj4e.com/ Django for Everybody for on Coursera: https://www.coursera.org/specializati... YouTube: https://youtu.be/o0XbHvKxw7Y // PostgreSQL for Everybody // PostgreSQL for Everybody: https://www.pg4e.com/ PostgreSQL for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://www.youtube.com/watch?v=flRUu... // Web Applications for Everybody // YouTube: https://youtu.be/xr6uZDRTna0 Web Applications for Everybody: https://www.wa4e.com/ Web Applications for Everybody on Coursera: https://www.coursera.org/specializati... YouTube: https://www.youtube.com/watch?v=tuXyS... // Books // The C Programming Language by Brian Kernighan and Dennis Ritchie (the 1984 Second Ed and 1978 First Ed): https://amzn.to/3G0HSkU // MY STUFF // https://www.amazon.com/shop/davidbombal // SOCIAL // Discord: https://discord.com/invite/usKSyzb Twitter: https://www.twitter.com/davidbombal Instagram: https://www.instagram.com/davidbombal LinkedIn: https://www.linkedin.com/in/davidbombal Facebook: https://www.facebook.com/davidbombal.co TikTok: http://tiktok.com/@davidbombal YouTube: https://www.youtube.com/davidbombal // Dr Chuck Social // Website: https://www.dr-chuck.com/ Twitter: https://twitter.com/drchuck/ YouTube: https://www.youtube.com/user/csev Coursera: https://www.coursera.org/instructor/d... c rust c vs rust c course free c course Python C Django SQL PostgreSQL PHP MySQL jQuery CSS best programming language python python course python for beginners master programmer dr chuck dr chuck master programmer python mentorship google code interview google interview computer science python best course dr chuck python dr chuck python course learn to code software development software developer computer science software engineer software engineering how to learn programming free python course free python course online free python class free python tutorial free python training how to learn to code coding tutorials how to code learning to code learn to code for free learn to code python python jobs coding bootcamp google code interview python for beginners python full course python tutorial python projects python basic tutorial python programming python interview questions python course python basics open source #python #javascript #drchuck

BSD Now
485: FreeBSD Home Assistant

BSD Now

Play Episode Listen Later Dec 15, 2022 43:32


Tails of the M1 GPU, Getting Home Assistant running in a FreeBSD 13.1 jail, interview with AWK creator Dr. Brian Kernighan, Next steps toward mimmutable, Unix's (technical) history is mostly old now, and more NOTES This episode of BSDNow is brought to you by Tarsnap (https://www.tarsnap.com/bsdnow) and the BSDNow Patreon (https://www.patreon.com/bsdnow) Headlines Tails of the M1 GPU (https://asahilinux.org/2022/11/tales-of-the-m1-gpu/) Getting Home Assistant running in a FreeBSD 13.1 jail (https://dan.langille.org/2022/08/27/getting-home-assistant-running-in-a-freebsd-13-1-jail/) News Roundup A brief interview with AWK creator Dr. Brian Kernighan (https://pldb.com/posts/brianKernighan.html) Next steps toward mimmutable, from deraadt@ (https://undeadly.org/cgi?action=article;sid=20221120115616) Unix's (technical) history is mostly old now (https://utcc.utoronto.ca/~cks/space/blog/unix/UnixHistoryMostlyOldNow) MWL Update • [Fediverse Servers, plus mac_portacl on FreeBSD](https://mwl.io/archives/22392) • [Fifty Books. Thirty Years. What Next?](https://mwl.io/archives/22399) • [Mailing List Freebies](https://mwl.io/archives/22423) Beastie Bits More #FreeBSD Power Saving Notes (http://blog.ignoranthack.me/?p=686) Hacker Stations (https://hackerstations.com/) The Cult of DD (https://eklitzke.org/the-cult-of-dd) RavynOS (https://airyx.org/) ravynOS (previously called airyxOS) is an open-source operating system based on FreeBSD, CMU Mach, and Apple open-source code that aims to be compatible with macOS applications and has no hardware restrictions. Tarsnap This weeks episode of BSDNow was sponsored by our friends at Tarsnap, the only secure online backup you can trust your data to. Even paranoids need backups. Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv (mailto:feedback@bsdnow.tv)

Lexman Artificial
Brian Kernighan on Theosophy, Borrowing and Escapology

Lexman Artificial

Play Episode Listen Later Nov 4, 2022 5:08


Brian Kernighan talks about how he became a theosophist and how it relates to his work as a software engineer. He also discusses the escapologist and astatine, two concepts that are related to his work.

Lexman Artificial
Brian Kernighan on Monism, Auklets, Solfataras, Yeasts, and Haws

Lexman Artificial

Play Episode Listen Later Oct 15, 2022 4:01


Brian Kernighan discusses monisms, auklets, solfataras, yeasts, and haws.

They Create Worlds
A Rogue's Survival Part 1

They Create Worlds

Play Episode Listen Later Sep 15, 2022 79:35


TCW Podcast Episode 170 - A Rogue's Survival Part 1   We start looking into Rogue by looking at the computer systems that helped to spawn its creation. We cover the history of UNIX. The development of UNIX is tied heavily to the development and distribution of Rogue. Rogue was programmed in partnership between Michael Toy and Glenn Wichman. The game featured extensive replayability. The game started to spread through early UseNet and inspired others to create similar games.   TCW 084 - Time Shared: http://podcast.theycreateworlds.com/e/time-shared/ AT&T Archives The UNIX OS: https://www.youtube.com/watch?v=tc4ROCJYbm0 C Programing Language with Brian Kernighan: https://www.youtube.com/watch?v=de2Hsvxaf8M AT&T Archive The Bell System: https://www.youtube.com/watch?v=iBPTM_irIco ADM-3A: https://www.youtube.com/watch?v=KzmB-Eow5P8 Bill Joy Interview: https://www.youtube.com/watch?v=LEUXI3I_IZg What is ASCII?: https://www.youtube.com/watch?v=zB85kTs-sEw Characters Symbols, and the Unicode Miracle: https://www.youtube.com/watch?v=MijmeoH9LT4 The Hidden Early History of Unix: https://www.youtube.com/watch?v=XuzeagzQwRs UUCP: https://en.wikipedia.org/wiki/UUCP FreeBSD: https://www.freebsd.org/ Rogue on Steam: https://store.steampowered.com/app/1443430/Rogue/ NetHack: https://www.nethack.org/     New episodes are on the 1st and 15th of every month!   TCW Email: feedback@theycreateworlds.com  Twitter: @tcwpodcast Patreon: https://www.patreon.com/theycreateworlds Alex's Video Game History Blog: http://videogamehistorian.wordpress.com Alex's book, published Dec 2019, is available at CRC Press and at major online retailers: http://bit.ly/TCWBOOK1     Intro Music: Josh Woodward - Airplane Mode -  Music - "Airplane Mode" by Josh Woodward. Free download: http://joshwoodward.com/song/AirplaneMode  Outro Music: RolemMusic - Bacterial Love: http://freemusicarchive.org/music/Rolemusic/Pop_Singles_Compilation_2014/01_rolemusic_-_bacterial_love    Copyright: Attribution: http://creativecommons.org/licenses/by/4.0/

Lexman Artificial
Brian Kernighan on Ultracentrifuge and Ransome

Lexman Artificial

Play Episode Listen Later Aug 7, 2022 3:51


Brian Kernighan discusses his career in computer science and his work on the first version of UNIX.

Lexman Artificial
Brian Kernighan on Nites and their Effects on the Universe

Lexman Artificial

Play Episode Listen Later Jul 23, 2022 3:28


Lexman interviews Brian Kernighan about his new book on nites and their effects on the universe. They discuss whether or not nites can be said to unconditionally sustain something, and if this is true, what might this mean for the future of the universe.

Lexman Artificial
Brian Kernighan on the 1997 Hong Kong Cyclone

Lexman Artificial

Play Episode Listen Later Jul 17, 2022 5:39


Brian Kernighan, the father of the software industry, tells Lexman about his experience at the time of the Hong Kong 1997 Cyclone and his work with programmable calculators.

Lexman Artificial
Brian Kernighan on Depression, Candlepin, and Coss

Lexman Artificial

Play Episode Listen Later Jul 11, 2022 3:27


Lexman interviews Brian Kernighan, one of the original creators of the Unix operating system. They discuss how Brian became depressed and how he dealt with it, as well as how Candlepin and Coss were inspired by Unix.

Lexman Artificial
Brian Kernighan: The Father of Modern Programming

Lexman Artificial

Play Episode Listen Later Jul 11, 2022 5:50


Brian Kernighan, the father of modern programming, discusses the pros and cons of right-handers and paddings in Scandinavian bondstones.

C Programming for Everybody (cc4e.com)
Welcome to C Programming for Everybody - www.cc4e.com

C Programming for Everybody (cc4e.com)

Play Episode Listen Later Jul 10, 2022 2:53


This www.cc4e.com web site is dedicated to learning the "classic" version of the C Programming language from the 1978 book written by Brian Kernighan and Dennis Ritchie. This K&R book places the reader in the middle of the 1970's transition from a hardware-centered computer science to a focus on writing portable and efficient software. C was used to develop operating systems like Unix, Minix, and Linux.

C Programming for Everybody (cc4e.com)
C Programming - Chapter 0 - Preface

C Programming for Everybody (cc4e.com)

Play Episode Listen Later Jul 9, 2022 18:03


The preface to C Programming by Brian Kernighan and Dennis Ritchie places the C programming language in the context of the other popular programming languages of the 1960's and 1970's FORTRAN, COBOL, Pascal, Algol, and PL/I .  Many concepts like separation of concerns and the use of provided run-time libraries versus language syntax are introduced and described.

Lexman Artificial
Brian Kernighan on Nitrite and Copperas Compounds

Lexman Artificial

Play Episode Listen Later Jul 8, 2022 2:26


Lexman interviews Brian Kernighan about the nitrite and copperas compounds. Brian Kernighan is a computer scientist and one of the co-authors of the C programming language. He also has a podcast called “Practical Data Science” where he interviews experts in data science.

Lexman Artificial
Brian Kernighan on Laster, Incitation, and Mucking Around

Lexman Artificial

Play Episode Listen Later Jul 1, 2022 3:56


In this episode, Lexman interviews Brian Kernighan, the father of the C programming language and the author of "The C Programming Language". They discuss Kernighan's new book "Laster, Incitation, and Mucking Around", which is a collection of essays about programming. Kernighan is a great guest and has a lot to say about programming, software engineering, and life in general.

Lexman Artificial
Brian Kernighan: The C Programmer

Lexman Artificial

Play Episode Listen Later Jun 27, 2022 3:02


Brian Kernighan, the original author of the C programming language, joins Lexman to discuss his career and the origins of the language. They discuss Lakshmi, a method of sorting data that originated with Chads, a cache implementation that was controversial. Finally, they discuss dissidences, a type of error that can happen when documents are parsed.

Lexman Artificial
Brian Kernighan: The Man Ahead of His Time

Lexman Artificial

Play Episode Listen Later Jun 20, 2022 2:06


Brian Kernighan is one of the fathers of modern computing. He was one of the first people to work on the IBM 360, and helped create the Unix operating system. In this episode, Lexman talks with Brian about his precocities, his ceramic career, and how he helped shape today's technology.

BSD Now
455: Ken Thompson Singularity

BSD Now

Play Episode Listen Later May 19, 2022 45:21


OpenBSD is the Perfect OS post Nuclear Apocalypse, Multiprocess support for LLDB, porting the new Hare compiler to OpenBSD, Writing my first OpenBSD game using Godot, FreeBSD 13 on Thinkpad T460s, and more. NOTES This episode of BSDNow is brought to you by Tarsnap (https://www.tarsnap.com/bsdnow) and the BSDNow Patreon (https://www.patreon.com/bsdnow) Headlines OpenBSD is the Perfect OS post Nuclear Apocalypse (https://confuzeus.com/shorts/openbsd-nuclear-apocalypse/) Multiprocess support for LLDB (https://www.moritz.systems/blog/multiprocess-support-for-lldb/) News Roundup I ported the new Hare compiler to OpenBSD (https://briancallahan.net/blog/20220427.html) Writing my first OpenBSD game using Godot (https://dataswamp.org/~solene/2022-04-28-writing-a-game-with-godot.html) FreeBSD 13 on Thinkpad T460s (https://www.tumfatig.net/2022/freebsd-13-on-thinkpad-t460s/) Beastie Bits Open Source Voices interview with Deb Goodkin (https://www.opensourcevoices.org/29) Tachyum Successfully Runs FreeBSD in Prodigy Ecosystem, Expands Open-Source OS Support (https://www.hpcwire.com/off-the-wire/tachyum-successfully-runs-freebsd-in-prodigy-ecosystem-expands-open-source-os-support/) MidnightBSD Minor Update 2.1.7 (https://midnightbsd.org/security/index.html#a20220404) LibreSSL 3.5.2 Released (https://bsdsec.net/articles/libressl-3-5-2-released) OpenBGPD 7.3 is out (https://undeadly.org/cgi?action=article;sid=20220414091532) Playing the game Bottomless on OpenBSD (https://videos.pair2jeux.tube/w/jheVDTPmBTQzkmSpNSvk8J) Windows Central: OpenBSD already has a version for Apple Silicon (https://windows11central.com/en/openbsd-already-has-a-version-for-apple-silicon/) OpenBSD Webzine #9 is out (https://webzine.puffy.cafe/issue-9.html) In the "Everone makes mistakes catagory" : I forgot to enable compression on ZFS (https://dan.langille.org/2022/04/28/i-forgot-to-enable-compression-on-zfs/) "Ken Thompson is a singularity" ~Brian Kernighan (https://www.youtube.com/watch?v=fL2QwyxcJ5s) Tarsnap This weeks episode of BSDNow was sponsored by our friends at Tarsnap, the only secure online backup you can trust your data to. Even paranoids need backups. Feedback/Questions Ben - Securing FreeBSD (https://github.com/BSDNow/bsdnow.tv/blob/master/episodes/455/feedback/Ben%20-%20Securing%20FreeBSD.md) Dave - BSD certifications (https://github.com/BSDNow/bsdnow.tv/blob/master/episodes/455/feedback/Dave%20-%20BSD%20certifications.md) Sam - maintaining a port (https://github.com/BSDNow/bsdnow.tv/blob/master/episodes/455/feedback/Sam%20-%20maintaining%20a%20port.md) Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv (mailto:feedback@bsdnow.tv) ***

Radiolab
NULL

Radiolab

Play Episode Listen Later Apr 15, 2022 19:41 Very Popular


A one-word magical spell. Several years back, that's exactly what Joseph Tartaro thought he'd discovered. It was a spell that, if used properly, promised to make one's problems disappear. And so he crossed his fingers, uttered the word and cast the enchantment on himself. The result, however, was anything but magical. Unbeknownst to Joseph, by unleashing this spell, he'd earned a lifetime membership into a cursed community. A clan made up of folks who, through no fault of their own, had become nameless and invisible. Today, the story of these unfortunate souls, the dark digital arts that took so much from them and the wizardry needed to give them new life. Special thanks to Sarah Chasins, Tony Hoare, Brian Kernighan and to Patrick McKenzie for writing that wonderful list of assumptions programmers believe about names. And also to all the folks who spoke to us and emailed us with stories of their own ‘problematic' names. Support Radiolab by becoming a member of The Lab today.     Radiolab is on YouTube! Catch up with new episodes and hear classics from our archive. Plus, find other cool things we did in the past — like miniseries, music videos, short films and animations, behind-the-scenes features, Radiolab live shows, and more. Take a look, explore and subscribe!

The Changelog
Wisdom from 50+ years in software

The Changelog

Play Episode Listen Later Mar 30, 2022 96:30 Transcription Available Very Popular


Today we have a special treat. A conversation with Brian Kernighan! Brian's been in the software game since the beginning of Unix. Yes, he was there at Bell Labs when it all began. And he is still at it today, writing books and teaching the next generation at Princeton. This is an epic and wide ranging conversation. You'll hear about the birth of Unix, Ken Thompson's unique skillset, why Brian thinks C has stood the test of time, his thoughts on modern languages like Go and Rust, what's changed in 50 years of software, what makes platforms like Unix and the web so powerful, his take as a professor on the trend of programmers skipping the university track, and so much more. Seriously, this is a must-listen.

Changelog Master Feed
Wisdom from 50+ years in software (The Changelog #484)

Changelog Master Feed

Play Episode Listen Later Mar 30, 2022 96:30 Transcription Available


Today we have a special treat. A conversation with Brian Kernighan! Brian's been in the software game since the beginning of Unix. Yes, he was there at Bell Labs when it all began. And he is still at it today, writing books and teaching the next generation at Princeton. This is an epic and wide ranging conversation. You'll hear about the birth of Unix, Ken Thompson's unique skillset, why Brian thinks C has stood the test of time, his thoughts on modern languages like Go and Rust, what's changed in 50 years of software, what makes platforms like Unix and the web so powerful, his take as a professor on the trend of programmers skipping the university track, and so much more. Seriously, this is a must-listen.

The History of Computing
awk && Regular Expressions For Finding Text

The History of Computing

Play Episode Listen Later Mar 4, 2022 8:40


Programming was once all about math. And life was good. Then came strings, or those icky non-numbery things. Then we had to process those strings. And much of that is looking for patterns that wouldn't be a need with integers, or numbers. For example, a space in a string of text. Let's say we want to print hello world to the screen in bash. That would be the echo command, followed by “Hello World!” Now let's say we ran that without the quotes then it would simply echo out the word Hello to the screen, given that the interpreter saw the space and ended the command, or looked for the next operator or verb according to which command is being used. Unix was started in 1969 at Bell Labs. Part of that work was The Thompson shell, the first Unix shell, which shipped in 1971. And C was written in 1972. These make up the ancestral underpinnings of the modern Linux, BSD, Android, Chrome, iPhone, and Mac operating systems. A lot of the work the team at Bell Labs was doing was shifting from pure statistical and mathematical operations to connect phones and do R&D faster to more general computing applications. Those meant going from math to those annoying stringy things. Unix was an early operating system and that shell gave them new abilities to interact with the computer. People called files funny things. There was text in those files. And so text manipulation became a thing. Lee McMahon developed sed in 1974, which was great for finding patterns and doing basic substitutions. Another team  at Bell Labs that included Finnish programmer Alfred Aho, Peter Weinberger, and Brian Kernighan had more advanced needs. Take their last name initials and we get awk. Awk is a programming language they developed in 1977 for data processing, or more specifically for text manipulation. Marc Rochkind had been working on a version management tool for code at Bell and that involved some text manipulation, as well as a good starting point for awk.  It's meant to be concise and given some input, produce the desired output. Nice, short, and efficient scripting language to help people that didn't need to go out and learn C to do some basic tasks. AWK is a programming language with its own interpreter, so no need to compile to run AWK scripts as executable programs.  Sed and awk are both written to be used as one0line programs, or more if needed. But building in an implicit loops and implicit variables made it simple to build short but power regular expressions. Think of awk as a pair of objects. The first is a pattern followed by an action to take in curly brackets. It can be dangerous to call if the pattern is too wide open.; especially when piping information For example,  ls -al at the root of a volume and piping that to awk $1 or some other position and then piping that into xargs to rm and a systems administrator could have a really rough day. Those $1, $2, and so-on represent the positions of words. So could be directories.  Think about this, though. In a world before relational databases, when we were looking to query the 3rd column in a file with information separated by some delimiter, piping those positions represented a simple way to effectively join tables of information into a text file or screen output. Or to find files on a computer that match a pattern for whatever reason.  Awk began powerful. Over time, improvements have enabled it to be used in increasingly  complicated scenarios. Especially when it comes to pattern matching with regular expressions. Various coding styles for input and output have been added as well, which can be changed depending on the need at hand.  Awk is also important because it influenced other languages. After becoming part of the IEEE Standard 1003.1, it is now a part of the POSIX standard. And after a few years, Larry Wall came up with some improvements, and along came Perl. But the awk syntax has always been the most succinct and useable regular expression engines. Part of that is the wildcard, piping, and file redirection techniques borrowed from the original shells. The AWK creators wrote a book called The AWK Programming Language for Addison-Wesley in 1988. Aho would go on to develop influential algorithms, write compilers, and write books (some of which were about compilers). Weinberger continued to do work at Bell before becoming the Chief Technology Officer of Hedge Fund Renaissance Technologies with former code breaker and mathematician James Simon and Robert Mercer. His face led to much love from his coworkers at Bell during the advent of digital photography and hopefully some day we'll see it on the Google Search page, given he now works there.  Brian Kernighan was a contributor to the early Multics then Unix work, as well as C. In fact, an important C implementation, K&R C, stands for Kernighan and Ritchie C. He coauthored The C Programming Language ands written a number of other books, most recently on the Go Programming Language. He also wrote a number of influential algorithms, as well as some other programming languages, including AMPL. His 1978 description of how to manage memory when working with those pesky strings we discussed earlier went on to give us the Hello World example we use for pretty much all introductions to programming languages today. He worked on ARPA projects at Stanford, helped with emacs, and now teaches computer science at Princeton, where he can help to shape the minds of future generations of programming languages and their creators. 

CppCast
Unix and C History with Brian Kernighan

CppCast

Play Episode Listen Later Feb 4, 2022 53:03


Brian Kernighan joins Rob and Jason. They first talk about the pros and cons of virtual teaching and training during COVID times, and the news that BOLT has been merged into LLVM. Then they talk to Brian about the history of UNIX and C development at Bell Labs. News More than a year of virtual classes experience - The good parts BOLT merged into LLVM C++ Cheat Sheets Links Brian Kernighan Unix: A History and a Memoir (Amazon) The C Programming Language (Amazon) Sponsors Indicate the #cppcast hashtag and request your PVS-Studio one-month trial license here https://pvs-studio.com/try_free C++ tools evolution: static code analyzers: https://pvs-studio.com/0873  

The History of Computing
The Innovations Of Bell Labs

The History of Computing

Play Episode Listen Later Aug 15, 2021 22:18


What is the nature of innovation? Is it overhearing a conversation as with Morse and the telegraph? Working with the deaf as with Bell? Divine inspiration? Necessity? Science fiction? Or given that the answer to all of these is yes, is it really more the intersectionality between them and multiple basic and applied sciences with deeper understandings in each domain? Or is it being given the freedom to research? Or being directed to research? Few have as storied a history of innovation as Bell Labs and few have had anything close to the impact. Bell Labs gave us 9 Nobel Prizes and 5 Turing awards. Their alumni have even more, but those were the ones earned while at Bell. And along the way they gave us 26,000 patents. They researched, automated, and built systems that connected practically every human around the world - moving us all into an era of instant communication. It's a rich history that goes back in time from the 2018 Ashkin Nobel for applied optical tweezers and 2018 Turing award for Deep Learning to an almost steampunk era of tophats and the dawn of the electrification of the world. Those late 1800s saw a flurry of applied and basic research. One reason was that governments were starting to fund that research. Alessandro Volta had come along and given us the battery and it was starting to change the world. So Napolean's nephew, Napoleon III, during the second French Empire gave us the Volta Prize in 1852. One of those great researchers to receive the Volta Prize was Alexander Graham Bell. He invented the telephone in 1876 and was awarded the Volta Prize, getting 50,000 francs. He used the money to establish the Volta Laboratory, which would evolve or be a precursor to a research lab that would be called Bell Labs. He also formed the Bell Patent Association in 1876. They would research sound. Recording, transmission, and analysis - so science. There was a flurry of business happening in preparation to put a phone in every home in the world. We got the Bell System, The Bell Telephone Company, American Bell Telephone Company patent disputes with Elisha Gray over the telephone (and so the acquisition of Western Electric), and finally American Telephone and Telegraph, or AT&T. Think of all this as Ma' Bell. Not Pa' Bell mind you - as Graham Bell gave all of his shares except 10 to his new wife when they were married in 1877. And her dad ended up helping build the company and later creating National Geographic, even going international with International Bell Telephone Company. Bell's assistant Thomas Watson sold his shares off to become a millionaire in the 1800s, and embarking on a life as a Shakespearean actor. But Bell wasn't done contributing. He still wanted to research all the things. Hackers gotta' hack. And the company needed him to - keep in mind, they were a cutting edge technology company (then as in now). That thirst for research would infuse AT&T - with Bell Labs paying homage to the founder's contribution to the modern day. Over the years they'd be on West Street in New York and expand to have locations around the US. Think about this: it was becoming clear that automation would be able to replace human efforts where electricity is concerned. The next few decades gave us the vacuum tube, flip flop circuits, mass deployment of radio. The world was becoming ever so slightly interconnected. And Bell Labs was researching all of it. From physics to the applied sciences. By the 1920s, they were doing sound synchronized with motion and shooting that over long distances and calculating the noise loss. They were researching encryption. Because people wanted their calls to be private. That began with things like one-time pad cyphers but would evolve into speech synthesizers and even SIGSALY, the first encrypted (or scrambled) speech transmission that led to the invention of the first computer modem. They had engineers like Harry Nyquist, whose name is on dozens of theories, frequencies, even noise. He arrived in 1917 and stayed until he retired in 1954. One of his most important contributions was to move beyond printing telegraph to paper tape and to helping transmit pictures over electricity - and Herbert Ives from there sent color photos, thus the fax was born (although it would be Xerox who commercialized the modern fax machine in the 1960s). Nyquist and others like Ralph Hartley worked on making audio better, able to transmit over longer lines, reducing feedback, or noise. While there, Hartley gave us the oscillator, developed radio receivers, parametric amplifiers, and then got into servomechanisms before retiring from Bell Labs in 1950. The scientists who'd been in their prime between the two world wars were titans and left behind commercializable products, even if they didn't necessarily always mean to. By the 40s a new generation was there and building on the shoulders of these giants. Nyquist's work was extended by Claude Shannon, who we devoted an entire episode to. He did a lot of mathematical analysis like writing “A Mathematical Theory of Communication” to birth Information Theory as a science. They were researching radio because secretly I think they all knew those leased lines would some day become 5G. But also because the tech giants of the era included radio and many could see a day coming when radio, telephony, and aThey were researching how electrons diffracted, leading to George Paget Thomson receiving the Nobel Prize and beginning the race for solid state storage. Much of the work being done was statistical in nature. And they had William Edwards Deming there, whose work on statistical analysis when he was in Japan following World War II inspired a global quality movement that continues to this day in the form of frameworks like Six Sigma and TQM. Imagine a time when Japanese manufacturing was of such low quality that he couldn't stay on a phone call for a few minutes or use a product for a time. His work in Japan's reconstruction paired with dedicated founders like Akio Morita, who co-founded Sony, led to one of the greatest productivity increases, without sacrificing quality, of any time in the world. Deming would change the way Ford worked, giving us the “quality culture.” Their scientists had built mechanical calculators going back to the 30s (Shannon had built a differential analyzer while still at MIT) - first for calculating the numbers they needed to science better then for ballistic trajectories, then with the Model V in 1946, general computing. But these were slow; electromechanical at best. Mary Torrey was another statistician of the era who along with Harold Hodge gave us the theory of acceptance sampling and thus quality control for electronics. And basic electronics research to do flip-flop circuits fast enough to establish a call across a number of different relays was where much of this was leading. We couldn't use mechanical computers for that, and tubes were too slow. And so in 1947 John Bardeen, Walter Brattain, and William Shockley invented the transistor at Bell Labs, which be paired with Shannon's work to give us the early era of computers as we began to weave Boolean logic in ways that allowed us to skip moving parts and move to a purely transistorized world of computing. In fact, they all knew one day soon, everything that monster ENIAC and its bastard stepchild UNIVAC was doing would be done on a single wafer of silicon. But there was more basic research to get there. The types of wires we could use, the Marnaugh map from Maurice Karnaugh, zone melting so we could do level doping. And by 1959 Mohamed Atalla and Dawon Kahng gave us metal-oxide semiconductor field-effect transistors, or MOSFETs - which was a step on the way to large-scale integration, or LSI chips. Oh, and they'd started selling those computer modems as the Bell 101 after perfecting the tech for the SAGE air-defense system. And the research to get there gave us the basic science for the solar cell, electronic music, and lasers - just in the 1950s. The 1960s saw further work work on microphones and communication satellites like Telstar, which saw Bell Labs outsource launching satellites to NASA. Those transistors were coming in handy, as were the solar panels. The 14 watts produced certainly couldn't have moved a mechanical computer wheel. Blaise Pascal and would be proud of the research his countries funds inspired and Volta would have been perfectly happy to have his name still on the lab I'm sure. Again, shoulders and giants. Telstar relayed its first television signal in 1962. The era of satellites was born later that year when Cronkite televised coverage of Kennedy manipulating world markets on this new medium for the first time and IBM 1401 computers encrypted and decrypted messages, ushering in an era of encrypted satellite communications. Sputnik may heave heated the US into orbit but the Telstar program has been an enduring system through to the Telstar 19V launched in 2018 - now outsourced to a Falcon 9 rocket from Space X. It might seem like Bell Labs had done enough for the world. But they still had a lot of the basic wireless research to bring us into the cellular age. In fact, they'd plotted out what the cellular age would look like all the way back in 1947! The increasing use of computers to do the all the acoustics and physics meant they were working closely with research universities during the rise of computing. They were involved in a failed experiment to create an operating system in the late 60s. Multics influenced so much but wasn't what we might consider a commercial success. It was the result of yet another of DARPA's J.C.R. Licklider's wild ideas in the form of Project MAC, which had Marvin Minsky and John McCarthy. Big names in the scientific community collided with cooperation and GE, Bell Labs and Multics would end up inspiring many a feature of a modern operating system. The crew at Bell Labs knew they could do better and so set out to take the best of Multics and implement a lighter, easier operating system. So they got to work on Uniplexed Information and Computing Service, or Unics, which was a pun on Multics. Ken Thompson, Dennis Ritchie, Doug McIllroy, Joe Assana, Brian Kernigan, and many others wrote Unix originally in assembly and then rewrote it in C once Dennis Ritchie wrote that to replace B. Along the way, Alfred Aho, Peter Weinber, and Kernighan gave us AWSK and with all this code they needed a way to keep the source under control so Marc Rochkind gave us the SCCS, or Course Code Control System, first written for an IBM S/3370 and then ported to C - which would be how most environments maintained source code until CVS came along in 1986. And Robert Fourer, David Gay, and Brian Kernighan wrote A Mathematical Programming Language, or AMPL, while there. Unix began as a bit of a shadow project but would eventually go to market as Research Unix when Don Gillies left Bell to go to the University of Illinois at Champaign-Urbana. From there it spread and after it fragmented in System V led to the rise of IBM's AIX, HP-UX, SunOS/Solaris, BSD, and many other variants - including those that have evolved into the macOS through Darwin, and Android through Linux. But Unix wasn't all they worked on - it was a tool to enable other projects. They gave us the charge-coupled device, which resulted in yet another Nobel Prize. That is an image sensor built on the MOS technologies. While fiber optics goes back to the 1800s, they gave us attenuation over fiber and thus could stretch cables to only need repeaters every few dozen miles - again reducing the cost to run the ever-growing phone company. All of this electronics allowed them to finally start reducing their reliance on electromechanical and human-based relays to transistor-to-transistor logic and less mechanical meant less energy, less labor to repair, and faster service. Decades of innovation gave way to decades of profit - in part because of automation. The 5ESS was a switching system that went online in 1982 and some of what it did - its descendants still do today. Long distance billing, switching modules, digital line trunk units, line cards - the grid could run with less infrastructure because the computer managed distributed switching. The world was ready for packet switching. 5ESS was 100 million lines of code, mostly written in C. All that source was managed with SCCS. Bell continued with innovations. They produced that modem up into the 70s but allowed Hayes, Rockewell, and others to take it to a larger market - coming back in from time to time to help improve things like when Bell Labs, branded as Lucent after the breakup of AT&T, helped bring the 56k modem to market. The presidents of Bell Labs were as integral to the success and innovation as the researchers. Frank Baldwin Jewett from 1925 to 1940, Oliver Buckley from 40 to 51, the great Mervin Kelly from 51 to 59, James Fisk from 59 to 73, William Oliver Baker from 73 to 79, and a few others since gave people like Bishnu Atal the space to develop speech processing algorithms and predictive coding and thus codecs. And they let Bjarne Stroustrup create C++, and Eric Schmidt who would go on to become a CEO of Google and the list goes on. Nearly every aspect of technology today is touched by the work they did. All of this research. Jon Gerstner wrote a book called The Idea Factory: Bell Labs and the Great Age of American Innovation. He chronicles the journey of multiple generations of adventurers from Germany, Ohio, Iowa, Japan, and all over the world to the Bell campuses. The growth and contraction of the basic and applied research and the amazing minds that walked the halls. It's a great book and a short episode like this couldn't touch the aspects he covers. He doesn't end the book as hopeful as I remain about the future of technology, though. But since he wrote the book, plenty has happened. After the hangover from the breakup of Ma Bell they're now back to being called Nokia Bell Labs - following a $16.6 billion acquisition by Nokia. I sometimes wonder if the world has the stomach for the same level of basic research. And then Alfred Aho and Jeffrey Ullman from Bell end up sharing the Turing Award for their work on compilers. And other researchers hit a terabit a second speeds. A storied history that will be a challenge for Marcus Weldon's successor. He was there as a post-doc there in 1995 and rose to lead the labs and become the CTO of Nokia - he said the next regeneration of a Doctor Who doctor would come in after him. We hope they are as good of stewards as those who came before them. The world is looking around after these decades of getting used to the technology they helped give us. We're used to constant change. We're accustomed to speed increases from 110 bits a second to now terabits. The nature of innovation isn't likely to be something their scientists can uncover. My guess is Prometheus is guarding that secret - if only to keep others from suffering the same fate after giving us the fire that sparked our imaginations. For more on that, maybe check out Hesiod's Theogony. In the meantime, think about the places where various sciences and disciplines intersect and think about the wellspring of each and the vast supporting casts that gave us our modern life. It's pretty phenomenal when ya' think about it.

Channel 9
Ask the Expert: Hello, Brian – A conversation with Dr. Brian Kernighan, creator of “hello, world” | Ask the Expert

Channel 9

Play Episode Listen Later Mar 29, 2021 62:10


Have you ever wondered where the "hello, world!" program comes from? How is it that we're all writing that same program? Who was the first person to write it, and why did they pick that phrase? Join us for this in-depth conversation with Dr. Brian Kernighan who first wrote "hello, world!" nearly 50 years ago at Bell Labs. We talk about his start in computing, his advice for students today, and his thoughts on some of the ways the complicated effects that technology has had on society.

BSD Now
388: Must-have security tool

BSD Now

Play Episode Listen Later Feb 4, 2021 49:41


FreeBSD Q4 2020 Status report, a must-have security tool from OpenBSD, Bastille Port Redirection and Persistence, FreeBSD Wall Display Computer, etymology of command-line tools, GhostBSD 21.01.15 Release Notes, and more. NOTES This episode of BSDNow is brought to you by Tarsnap (https://www.tarsnap.com/bsdnow) Headlines FreeBSD quarterly status report for Q4 2020 (https://www.freebsd.org/news/status/report-2020-10-2020-12/) Block spammers/abusive IPs with Pf-badhost in OpenBSD. A 'must have' security tool! (https://undeadly.org/cgi?action=article;sid=20210119113425) Pf-badhost is a very practical, robust, stable and lightweight security script for network servers. It's compatible with BSD based operating systems such as {Open,Free,Net,Dragonfly}BSD and MacOS. It prevents potentially-bad IP addresses that could possibly attack your servers (and waste your bandwidth and fill your logfiles), by blocking all those IPs contacting your server, and therefore it makes your server network/resources lighter and the logs of important services running on your server become simpler, more readable and efficient. News Roundup Bastille Port Redirection and Persistence (https://bastillebsd.org/blog/2021/01/13/bastille-port-redirection-and-persistence/) Bastille supports redirecting (rdr) ports from the host system into target containers. This port redirection is commonly used when running Internet services such as web servers, dns servers, email and many others. Any service you want to make public outside of your cluster will likely require port redirection (with some exceptions, see below). FreeBSD Wall Display Computer (https://blog.tyk.nu/blog/freebsd-wall-display-computer/) I've recently added a wall mounted 30" monitor for Grafana in my home. I can highly recommend doing the same, especially in a world where more work from home is becoming the norm. The etymology of command-line tools (https://i.redd.it/sni9gaxfj2d61.png) GhostBSD 21.01.15 Release Notes (https://ghostbsd.org/21.01.15_release_notes) I am happy to announce the availability of the new ISO 21.01.15. This new ISO comes with a clean-up of packages that include removing LibreOffice and Telegram from the default selection. We did this to bring the zfs RW live file systems to run without problem on 4GB of ram machine. We also removed the UFS full disk option from the installer. Users can still use custom partitions to setup UFS partition, but we discourage it. We also fixed the Next button's restriction in the custom partition related to some bug that people reported. We also fix the missing default locale setup and added the default setup for Linux Steam, not to forget this ISO includes kernel, userland and numerous application updates. Beastie Bits Interview with Brian Kernighan (https://corecursive.com/brian-kernighan-unix-bell-labs1/) *** ###Tarsnap This weeks episode of BSDNow was sponsored by our friends at Tarsnap, the only secure online backup you can trust your data to. Even paranoids need backups. Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv (mailto:feedback@bsdnow.tv)

Kopec Explains Software
#32 What is Unix?

Kopec Explains Software

Play Episode Listen Later Jan 18, 2021 22:23


Unix is the most influential operating system of all time. In this episode we discuss its history, its evolution, and its philosophy. We trace Unix from its origins at Bell Laboratories, through the Unix Wars, and into the dominance of its clone, Linux. We talk about its relationship to the C Programming Language, the four points of its philosophy as outlined by McIlroy, and its future. Join us for a quick dive into Unix. Show Notes Episode 2: What is an Operating System? Episode 12: Open Source Software Episode 19: What is Linux? Unix Time-Sharing System: Foreword by McIlroy, Pinson, Tague via Archive.org Unix: A History and a Memoir by Brian Kernighan via Amazon Review of Unix: A History and a Memoir by David Follow us on Twitter @KopecExplains. Theme “Place on Fire” Copyright 2019 Creo, CC BY 4.0 As an Amazon Associate I earn from qualifying purchases. Find out more at http://kopec.live

Digitalia
Digitalia #554 - ZozoCondom

Digitalia

Play Episode Listen Later Dec 21, 2020 101:35


Facebook attacca Apple per il consenso agli utenti sulla condivisione dei dati. Solarwinds: l’attacco supply-chain su larga scala ad obiettivi eccellenti. L’EU procede con Digital Services Act. Gli AirPods Max. La storia di ARM. Queste e molte altre le notizie commentate nella puntata di questa settimana. Dallo studio distribuito di digitalia: Franco Solerio, Massimo De Santo, Giulio Cupini, Francesco Facconi Produttori esecutivi: Manuel Zavatta, Davide Tinti, Marco B., Claudio T., Marco Pasqualotto, Marco Grechi, Davide D'Angelo, Fabio Filisetti, Enrico Carangi, Fulvio Barizzone, Dario Nardi, Denis Grosso, Enrico Mattiazzi, Pier Luigi Ranghino, Paolo Roberto Grassi, Umberto Marcello, Giorgio Puglisi, Agostino Sargenti, Giacomo Cipriani, Fabio Brunelli, Andrea Malesani, Emanuele Zdunich, Alessandro Grossi, Fabrizio Reina, Fabio Zappa, Roberto Nespoli, Gianluca Nucci, Paolo Posocco, Ligea Technology Di D'Esposito Antonio, Marco Traverso, Simone Magnaschi, Roberto Duina, Mauro Tommasi, Donato Gravino, Letizia Calcinai, Emanuele Libori, Edoardo Volpi Kellerman, Fabrizio Mele, Andrea Delise, Massimo Pollastri, Alessandro Lago, Pietro Ciuffreda, Pierluigi Luciano Sponsor: Squarespace.com - utilizzate il codice coupon "DIGITALIA" per avere il 10% di sconto sul costo dell'abbonamento. Links: Queen Elizabeth will deliver her Christmas Day message via Alexa Amazon Has Turned a Middle-Class Warehouse Career Into a McJob Alexandria Ocasio-Cortez on Amazon workers Russia’s hacking frenzy is a reckoning Microsoft president calls SolarWinds hack an “act of recklessness” EFF definisce “ridicole” le critiche di Facebook a Apple Microsoft is reportedly developing its own ARM-based chips for Surface PCs Il kit digitalizzazione: poveri noi! Meet the Lawyer Trying to Keep Google From Being Broken Up SolarWinds, l’operazione di cyberspionaggio senza precedenti Facebook: Free as in Bullshit Manovra, cellulare per famiglie con ISEE sotto 20mila euro: le misure Ora è ufficiale: Amazon ha acquisito i diritti della Champions League Google: Redesigning search would harm the internet Frenemies Facebook and Apple square off Samsung toglie la radio dagli smartphone degli utenti Perché Samsung toglie la radio FM dai propri telefonini? I vantaggi di acquistare abiti su misura online Fashion site unveils new and improved 'Zozosuit 2' Ten States Sue Google, Alleging Deal With Facebook to Rig Ad Market Facebook criticizes Apple’s iOS privacy changes with full-page newspaper ads Facebook to move UK users to California terms, avoiding EU privacy rules FB Is Developing A Tool To Summarize Articles So You Don’t Have To Read Them Supporta Digitalia Gingilli del giorno: Facebook: The Inside Story RailModeller Express (Free Edition) Tehran on Apple TV+ The Birth of UNIX with Brian Kernighan

CoRecursive - Software Engineering Interviews
The Birth of Unix with Brian Kernighan

CoRecursive - Software Engineering Interviews

Play Episode Listen Later Nov 1, 2020 51:10


As Brian Kernighan said “UNIX since the start has become a vehicle for creating and using programming languages.” Brian initiated work on what would become the UNIX system. He helped develop it to run on a minicomputer and would eventually be ported to other computers. In this episode, Brain will go in-depth on how the UNIX was built. Episode Page Episode Transcript “If you wanted, you could go sit in your office and think deep thoughts or program, or write on your own blackboard or whatever, but then come back to the common space when you wanted to.“ - Brian Kernighan “I found it easier to program when I was trying to figure out the logic for myself rather than trying to figure out where in the infinite stack of documentation was the function I needed. So for me, programming is more like creating something rather than looking it up, and too much of today's programming is more like looking it up.” - Brian Kernighan “If what I find challenging or hard or whatever is also something that other people find hard or challenging or whatever, then if I do something that will improve my lot, I'm perhaps improving their lot at the same time.” - Brian Kernighan Links: Brian's Homepage Book: Unix: A History and a Memoir Book: Millions, Billions, Zillions: Defending Yourself in a World of Too Many Numbers Book: Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security

Sci-Section
The Growth of Computing Technology (Interview with Computer Scientist Dr. Brian Kernighan)

Sci-Section

Play Episode Listen Later Sep 26, 2020 25:30


3d8plus4
Jusqu'au Bout de la Nuit

3d8plus4

Play Episode Listen Later Aug 19, 2020 68:27


Dans cet épisode de 3d8plus4 nous survolons rapidement les 'Appstore Wars' de 2020 ainsi que l'intriguant nouveau 'PinePhone' avant de plonger tête la première dans City of Heroes, un MMORPG classique désormais disponible sur serveur privé qui a provoqué  des élans de plaisir et des émois nostalgiques à Dan; nous parlons ensuite de Keyflower, que Luis a essayé avec son groupe de jeux de table. Au retour de la pause, Luis parle du livre de Brian Kernighan sur 'son' histoire de UNIX  (et Dan lui enseigne par la même occasion qu'il a toujours mal écrit et prononcé le nom de l'auteur!) ainsi que du roman 'Berlin Funeral' de Len Deighton, un vrai classique délicieux de la guerre froide. Côté TV et cinéma, nous parlons du petit bijou sombre et sordide qu'est Perry Mason, et du navet inexplicable 'The Big Ugly'Intro:PinePhone et PostmarketOSNews:AppStore Wars 2020 : EPIC vs Apple vs Google vs LE MONDEJeux de Table:KeyflowerLivres:UNIX : A history and a memoir (Brian Kernighan)Berlin Funeral (Len Deighton)TV/Cinéma:The Big UglyPerry MasonEntrevue entre Brian Kernighan et Ken Thompson sur youtube :https://www.youtube.com/watch?v=EY6q5dv_B-oQuestions, commentaires: 3d8plus4@gmail.comSuivez-nous sur Twitter: @3d8plus4

Lex Fridman Podcast
#109 – Brian Kernighan: UNIX, C, AWK, AMPL, and Go Programming

Lex Fridman Podcast

Play Episode Listen Later Jul 18, 2020 103:37


Brian Kernighan is a professor of computer science at Princeton University. He co-authored the C Programming Language with Dennis Ritchie (creator of C) and has written a lot of books on programming, computers, and life including the Practice of Programming, the Go Programming Language, his latest UNIX: A History and a Memoir. He co-created AWK, the text processing language used by Linux folks like myself. He co-designed AMPL, an algebraic modeling language for large-scale optimization. Support this podcast by supporting our sponsors: – Eight Sleep: https://eightsleep.com/lex – Raycon: http://buyraycon.com/lex If you would like to get more information about this podcast

Dear Discreet Guide
Brian Kernighan on Dennis Ritchie: Unix, C and a Legacy

Dear Discreet Guide

Play Episode Listen Later Jul 10, 2020 59:28


Computer scientist Brian Kernighan joins us to talk about Dennis Ritchie, creator of the C programming language and co-developer of the Unix operating system along with Ken Thompson. Ritchie never sought the limelight, but his impact on the computer world is still visible everywhere from a multitude of operating systems to programming languages, search engines, car engines, and websites. Brian takes us through what made Ritchie's work novel, profound, inspiring, and long lasting. In a wide-ranging conversation, we talk about writing, Bell Labs, office configurations, motivation, and legacy. Brian even quotes a bit of Latin and offers some great takeaways about finding success and happiness at work. A historical and timely episode.Brian's book "Unix: A History and a Memoir" that we discuss:https://bookshop.org/books/unix-a-history-and-a-memoir/9781695978553The Penn & Teller prank we discuss:https://www.youtube.com/watch?v=fxMKuv0A6z4Thoughts? Comments? Potshots? Contact the show at:https://www.discreetguide.com/Follow or like us on podomatic.com (it raises our visibility :)https://www.podomatic.com/podcasts/deardiscreetguideSupport us on Patreon:https://www.patreon.com/discreetguideFollow the host on Twitter:@DiscreetGuideThe host on LinkedIn:https://www.linkedin.com/in/jenniferkcrittenden/

Dear Discreet Guide
Brian Kernighan on Dennis Ritchie: Unix, C and a Legacy

Dear Discreet Guide

Play Episode Listen Later Jul 10, 2020 59:28


Computer scientist Brian Kernighan joins us to talk about Dennis Ritchie, creator of the C programming language and co-developer of the Unix operating system along with Ken Thompson. Ritchie never sought the limelight, but his impact on the computer world is still visible everywhere from a multitude of operating systems to programming languages, search engines, car engines, and websites. Brian takes us through what made Ritchie's work novel, profound, inspiring, and long lasting. In a wide-ranging conversation, we talk about writing, Bell Labs, office configurations, motivation, and legacy. Brian even quotes a bit of Latin and offers some great takeaways about finding success and happiness at work. A historical and timely episode.Brian's book "Unix: A History and a Memoir" that we discuss:https://bookshop.org/books/unix-a-history-and-a-memoir/9781695978553The Penn & Teller prank we discuss:https://www.youtube.com/watch?v=fxMKuv0A6z4Thoughts? Comments? Potshots? Contact the show at:https://www.discreetguide.com/Follow or like us on podomatic.com (it raises our visibility :)https://www.podomatic.com/podcasts/deardiscreetguideSupport us on Patreon:https://www.patreon.com/discreetguideFollow the host on Twitter:@DiscreetGuideThe host on LinkedIn:https://www.linkedin.com/in/jenniferkcrittenden/

Dear Discreet Guide
Brian Kernighan on Dennis Ritchie: Unix, C and a Legacy

Dear Discreet Guide

Play Episode Listen Later Jul 10, 2020 59:28


Computer scientist Brian Kernighan joins us to talk about Dennis Ritchie, creator of the C programming language and co-developer of the Unix operating system along with Ken Thompson. Ritchie never sought the limelight, but his impact on the computer world is still visible everywhere from a multitude of operating systems to programming languages, search engines, car engines, and websites. Brian takes us through what made Ritchie's work novel, profound, inspiring, and long lasting. In a wide-ranging conversation, we talk about writing, Bell Labs, office configurations, motivation, and legacy. Brian even quotes a bit of Latin and offers some great takeaways about finding success and happiness at work. A historical and timely episode. Brian's book "Unix: A History and a Memoir" that we discuss: https://bookshop.org/books/unix-a-history-and-a-memoir/9781695978553 The Penn & Teller prank we discuss: https://www.youtube.com/watch?v=fxMKuv0A6z4 Thoughts? Comments? Potshots? Contact the show at: https://www.discreetguide.com/ Follow or like us on podomatic.com (it raises our visibility :) https://www.podomatic.com/podcasts/deardiscreetguide Support us on Patreon: https://www.patreon.com/discreetguide Follow the host on Twitter: @DiscreetGuide The host on LinkedIn: https://www.linkedin.com/in/jenniferkcrittenden/

BSD Now
324: Emergency Space Mode

BSD Now

Play Episode Listen Later Nov 14, 2019 46:30


Migrating drives and zpool between hosts, OpenBSD in 2019, Dragonfly’s new zlib and dhcpcd, Batch renaming images and resolution with awk, a rant on the X11 ICCCM selection system, hammer 2 emergency space mode, and more. Headlines Migrating drives and the zpool from one host to another. (https://dan.langille.org/2019/10/26/migrating-drives-and-the-zpool-from-one-host-to-another/) Today is the day. Today I move a zpool from an R710 into an R720. The goal: all services on that zpool start running on the new host. Fortunately, that zpool is dedicated to jails, more or less. I have done some planning about this, including moving a poudriere on the R710 into a jail. Now it is almost noon on Saturday, I am sitting in the basement (just outside the server room), and I’m typing this up. In this post: FreeBSD 12.0 Dell R710 (r710-01) Dell R720 (r720-01) drive caddies from eBay and now I know the difference between SATA and SATAu PLEASE READ THIS first: Migrating ZFS Storage Pools (https://docs.oracle.com/cd/E19253-01/819-5461/gbchy/index.html) OpenBSD in 2019 (https://blog.habets.se/2019/10/OpenBSD-in-2019.html) I’ve used OpenBSD on and off since 2.1. More back then than in the last 10 years or so though, so I thought I’d try it again. What triggered this was me finding a silly bug in GNU cpio that has existed with a “FIXME” comment since at least 1994. I checked OpenBSD to see if it had a related bug, but as expected no it was just fine. I don’t quite remember why I stopped using OpenBSD for servers, but I do remember filesystem corruption on “unexpected power disconnections” (even with softdep turned on), which I’ve never really seen on Linux. That and that fewer things “just worked” than with Linux, which matters more when I installed more random things than I do now. I’ve become a lot more minimalist. Probably due to less spare time. Life is better when you don’t run things like PHP (not that OpenBSD doesn’t support PHP, just an example) or your own email server with various antispam tooling, and other things. This is all experience from running OpenBSD on a server. On my next laptop I intend to try running OpenBSD on the dektop, and will see if that more ad-hoc environment works well. E.g. will gnuradio work? Lack of other-OS VM support may be a problem. Verdict Ouch, that’s a long list of bad stuff. Still, I like it. I’ll continue to run it, and will make sure my stuff continues working on OpenBSD. And maybe in a year I’ll have a review of OpenBSD on a laptop. News Roundup New zlib, new dhcpcd (https://www.dragonflydigest.com/2019/10/29/23683.html) zlib and dhcpcd are both updated in DragonFly… but my quick perusal of the commits makes it sound like bugfix only; no usage changes needed. DHCPCD Commit: http://lists.dragonflybsd.org/pipermail/commits/2019-October/719768.html ZLIB Commit: http://lists.dragonflybsd.org/pipermail/commits/2019-October/719772.html Batch renaming images, including image resolution, with awk (https://victoria.dev/verbose/batch-renaming-images-including-image-resolution-with-awk/) The most recent item on my list of “Geeky things I did that made me feel pretty awesome” is an hour’s adventure that culminated in this code: $ file IMG* | awk 'BEGIN{a=0} {print substr($1, 1, length($1)-5),a++"_"substr($8,1, length($8)-1)}' | while read fn fr; do echo $(rename -v "s/$fn/img_$fr/g" *); done IMG_20170808_172653_425.jpg renamed as img_0_4032x3024.jpg IMG_20170808_173020_267.jpg renamed as img_1_3024x3506.jpg IMG_20170808_173130_616.jpg renamed as img_2_3024x3779.jpg IMG_20170808_173221_425.jpg renamed as img_3_3024x3780.jpg IMG_20170808_173417_059.jpg renamed as img_4_2956x2980.jpg IMG_20170808_173450_971.jpg renamed as img_5_3024x3024.jpg IMG_20170808_173536_034.jpg renamed as img_6_4032x3024.jpg IMG_20170808_173602_732.jpg renamed as img_7_1617x1617.jpg IMG_20170808_173645_339.jpg renamed as img_8_3024x3780.jpg IMG_20170909_170146_585.jpg renamed as img_9_3036x3036.jpg IMG_20170911_211522_543.jpg renamed as img_10_3036x3036.jpg IMG_20170913_071608_288.jpg renamed as img_11_2760x2760.jpg IMG_20170913_073205_522.jpg renamed as img_12_2738x2738.jpg // ... etc etc The last item on the aforementioned list is “TODO: come up with a shorter title for this list.” I hate the X11 ICCCM selection system, and you should too - A Rant (http://www.call-with-current-continuation.org/rants/icccm.txt) d00d, that document is devilspawn. I've recently spent my nights in pain implementing the selection mechanism. WHY OH WHY OH WHY? why me? why did I choose to do this? and what sick evil twisted mind wrote this damn spec? I don't know why I'm working with it, I just wanted to make a useful program. I didn't know what I was getting myself in to. Nobody knows until they try it. And once you start, you're unable to stop. You can't stop, if you stop then you haven't completed it to spec. You can't fail on this, it's just a few pages of text, how can that be so hard? So what if they use Atoms for everything. So what if there's no explicit correlation between the target type of a SelectionNotify event and the type of the property it indicates? So what if the distinction is ambiguous? So what if the document is littered with such atrocities? It's not the spec's fault, the spec is authoritative. It's obviously YOUR (the implementor's) fault for misunderstanding it. If you didn't misunderstand it, you wouldn't be here complaining about it would you? HAMMER2 emergency space mode (https://www.dragonflydigest.com/2019/10/22/23652.html) As anyone who has been running HAMMER1 or HAMMER2 has noticed, snapshots and copy on write and infinite history can eat a lot of disk space, even if the actual file volume isn’t changing much. There’s now an ‘emergency mode‘ for HAMMER2, where disk operations can happen even if there isn’t space for the normal history activity. It’s dangerous, in that the normal protections against data loss if power is cut go away, and snapshots created while in this mode will be mangled. So definitely don’t leave it on! Beastie Bits The BastilleBSD community has started work on over 100 automation templates (https://twitter.com/BastilleBSD/status/1186659762458501120) PAM perturbed (https://www.dragonflydigest.com/2019/10/23/23654.html) OpenBSD T-Shirts now available (https://teespring.com/stores/openbsd) FastoCloud (Opensource Media Service) now available on FreeBSD (https://old.reddit.com/r/freebsd/comments/dlyqtq/fastocloud_opensource_media_service_now_available/) Unix: A History and a Memoir by Brian Kernighan now available (https://www.cs.princeton.edu/~bwk/) OpenBSD Moonlight game streaming client from a Windows + Nvidia PC (https://www.reddit.com/r/openbsd_gaming/comments/d6xboo/openbsd_moonlight_game_streaming_client_from_a/) *** Feedback/Questions Tim - Release Notes for Lumina 1.5 (http://dpaste.com/38DNSXT#wrap) Answer Here (http://dpaste.com/3QJX8G3#wrap) Brad - vBSDcon Trip Report (http://dpaste.com/316MGVX#wrap) Jacob - Using terminfo on FreeBSD (http://dpaste.com/131N05J#wrap) Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv (mailto:feedback@bsdnow.tv) Your browser does not support the HTML5 video tag.

The History of Computing
The Advent Of The Cloud

The History of Computing

Play Episode Listen Later Sep 5, 2019 14:55


Welcome to the History of Computing Podcast, where we explore the history of information technology. Because by understanding the past prepares us for the innovations of the future! Today we're going to look at the emergence of the cloud. As with everything evil, the origin of the cloud began with McCarthyism. From 1950 to 1954 Joe McCarthy waged a war against communism. Wait, wrong McCarthyism. Crap. After Joe McCarthy was condemned and run out of Washington, **John** McCarthy made the world a better place in 1955 with a somewhat communistic approach to computing. The 1950s were the peak of the military industrial complex. The SAGE air defense system needed to process data coming in from radars and perform actions based on that data. This is when McCarthy stepped in. John, not Joe. He proposed things like allocating memory automatically between programs, quote “Programming techniques can be encouraged which make destruction of other programs unlikely” and modifying FORTRAN to trap programs into specified areas of the storage. When a person loading cards or debugging code, the computer could be doing other things. To use his words: “The only way quick response can be provided at a bearable cost is by time-sharing. That is, the computer must attend to other customers while one customer is reacting to some output.” He posited that this could go from a 3 hour to day and a half turnaround to seconds. Remember, back then these things were huge and expensive. So people worked shifts and ran them continuously. McCarthy had been at MIT and Professor Fernando Corbato from there actually built it between 1961 and 1963. But at about the same time, Professor Jack Dennis from MIT started doing about the same thing with a PDP-1 from DEC - he's actually probably one of the most influential people many I talk to have never heard of. He called this APEX and hooked up multiple terminals on TX-2. Remember John McCarthy? He and some students actually did the same thing in 1962 after moving on to become a professor at Stanford. 1965 saw Alan Kotok sell a similar solution for the PDP-6 and then as the 60s rolled on and people in the Bay Area got really creative and free lovey, Cobato, Jack Dennis of MIT, a team from GE, and another from Bell labs started to work on Multics, or Multiplexed Information and Computing Service for short, for the GE-645 mainframe. Bell Labs pulled out and Multics was finished by MIT and GE, who then sold their computer business to Honeywell so they wouldn't be out there competing with some of their customers. Honeywell sold Multics until 1985 and it included symmetric multiprocessing, paging, a supervisor program, command programs, and a lot of the things we now take for granted in Linux, Unix, and macOS command lines. But we're not done with the 60s yet. ARPAnet gave us a standardized communications platform and distributed computing started in the 60s and then became a branch of computer science later in the late 1970s. This is really a software system that has components stored on different networked computers. Oh, and Telnet came at the tail end of 1969 in RFC 15, allowing us to remotely connect to those teletypes. People wanted Time Sharing Systems. Which led Project Genie at Berkely, TOPS-10 for the PDP-10 and IBM's failed TSS/360 for the System 360. To close out the 70s, Ken Thompson, Dennis Ritchie, Doug McIllroy, Mike Lesk, Joe Assana, and of course Brian Kernighan at Bell Labs hid a project to throw out the fluff from Multics and build a simpler system. This became Unix. Unix was originally developed in Assembly but Ritchie would write C in 72 and the team would eventually refactor Unix in C. Pretty sure management wasn't at all pissed when they found out. Pretty sure the Uniplexed Information and Computing Services, or eunuchs for short wasn't punny enough for the Multics team to notice. BSD would come shortly thereafter. Over the coming years you could create multiple users and design permissions in a way that users couldn't step on each others toes (or more specifically delete each others files). IBM did something interesting in 1972 as well. They invented the Virtual Machine, which allowed them to run an operating system inside an operating system. At this point, time sharing options were becoming common place in mainframes. Enter Moore's Law. Computers got cheaper and smaller. Altair and hobbyists became a thing. Bill Joy ported BSD to Sun workstations in 77. Computers kept getting smaller. CP/M shows up on early microcomputers at about the same time up until 1983. Apple arrives on the scene. Microsoft DOS appears in 1981 and and In 1983, with all this software you have to pay for really starting to harsh his calm, Richard Stallman famously set out to make software free. Maybe this was in response to Gates' 1976 Open Letter to Hobbyists asking pc hobbyists to actually pay for software. Maybe they forgot they wrote most of Microsoft BASIC on DARPA gear. Given that computers were so cheap for a bit, we forgot about multi-user operating systems for awhile. By 1991, Linus Torvalds, who also believed in free software, by then known as open source, developed a Unix-like operating system he called Linux. Computers continued to get cheaper and smaller. Now you could have them on multiple desks in an office. Companies like Novell brought us utility computers we now refer to as servers. You had one computer to just host all the files so users could edit them. CERN gave us the first web server in 1990. The University of Minnesota gave us Gopher in 1991. NTP 3 came in 1992. The 90s also saw the rise of virtual private networks and client-server networks. You might load a Delphi-based app on every computer in your office and connect that fat client with a shared database on a server to, for example, have a shared system to enter accounting information into, or access customer information to do sales activities and report on them. Napster had mainstreamed distributed file sharing. Those same techniques were being used in clusters of servers that were all controlled by a central IT administration team. Remember those virtual machines IBM gave us: you could now cluster and virtualize workloads and have applications that were served from a large number of distributed computing systems. But as workloads grew, the fault tolerance and performance necessary to support them became more and more expensive. By the mid-2000s it was becoming more acceptable to move to a web-client architecture, which meant large companies wouldn't have to bundle up software and automate the delivery of that software and could instead use an intranet to direct users to a series of web pages that allowed them to perform business tasks. Salesforce was started in 1999. They are the poster child for software as a service and founder/CEO Marc Benioff coined the term platform as a service, allowing customers to build their own applications using the Salesforce development environment. But it wasn't until we started breaking web applications up and developed methods to authenticate and authorize parts of them to one another using technologies like SAML, introduced in 2002) and OAuth (2006) that we were able to move into a more micro-service oriented paradigm for programming. Amazon and Google had been experiencing massive growth and in 2006 Amazon created Amazon Web Services and offered virtual machines on demand to customers, using a service called Elastic Compute Cloud. Google launched G Suite in 2006, providing cloud-based mail, calendar, contacts, documents, and spreadsheets. Google then offered a cloud offering to help developers with apps in 2008 with Google App Engine. In both cases, the companies had invested heavily in developing infrastructure to support their own workloads and renting some of that out to customers just… made sense. Microsoft, seeing the emergence of Google as not just a search engine, but a formidable opponent on multiple fronts also joined into the Infrastructure as a Service as offering virtual machines for pennies per minute of compute time also joined the party in 2008. Google, Microsoft, and Amazon still account for a large percentage of cloud services offered to software developers. Over the past 10 years the technologies have evolved. Mostly just by incrementing a number, like OAuth 2.0 or HTML 5. Web applications have gotten broken up in smaller and smaller parts due to mythical programmer months meaning you need smaller teams who have contracts with other teams that their service, or micro-service, can specific tasks. Amazon, Google, and Microsoft see these services and build more workload specific services, like database as a service or putting a REST front-end on a database, or data lakes as a service. Standards like OAuth even allow vendors to provide Identity as a service, linking up all the things. The cloud, as we've come to call hosting services, has been maturing for 55 years, from shared compute time on mainframes to shared file storage space on a server to very small shared services like payment processing using Stripe. Consumers love paying a small monthly fee for access to an online portal or app rather than having to deploy large amounts of capital to bring in an old-school JDS Uniphase style tool to automate tasks in a company. Software developers love importing an SDK or calling a service to get a process for free, allowing developers to go to market much faster and look like magicians in the process. And we don't have teams at startups running around with fire extinguishers to keep gear humming along. This reduces the barrier to build new software and apps and democratizes software development. App stores and search engines then make it easier than ever to put those web apps and apps in front of people to make money. In 1959, John McCarthy had said “The cooperation of IBM is very important but it should be to their advantage to develop this new way of using a computer.” Like many new philosophies, it takes time to set in and evolve. And it takes a combination of advances to make something so truly disruptive possible. The time-sharing philosophy gave us Unix and Linux, which today are the operating systems running on a lot of these cloud servers. But we don't know or care about those because the web provides a layer on top of them that obfuscates the workload. Much as the operating system obfuscated the workload of the components of the system. Today those clouds obfuscate various layers of the stack so you can enter at any part of the stack you want whether it's a virtual computer or a service or just to consume a web app. And this has lead to an explosion of diverse and innovative ideas. Apple famously said “there's an app for that” but without the cloud there certainly wouldn't be. And without you, my dear listeners, there wouldn't be a podcast. So thank you so very much for tuning into another episode of the History of Computing Podcast. We're lucky to have you. Have a great day!

The freeCodeCamp Podcast
Ep. 71: Harvard CS50's David Malan and Colton Ogden on Computer Science

The freeCodeCamp Podcast

Play Episode Listen Later Jul 8, 2019 121:30


CS50 is the most popular course at Harvard, and hundreds of thousands of people have taken the free online version of the course as well. We recently posted the lectures for the course on freeCodeCamp's YouTube channel - including the CS50 game development course - all free and commercial-free. During this interview, David Malan and Colton Ogden talk about how they got into technology. They share tips for how to effectively learn computer science, and some advice for teachers and community leaders as well. Colton shares one of his favorite game development hacks, and David tell us the story behind the CS50 catchphrase: "this is CS50" Follow CS50 on Twitter: https://twitter.com/cs50 Subscribe to the CS50 podcast: https://podcasts.apple.com/us/podcast/cs50-podcast/id1459708246 Test out CS50's Integrated Development Environment: https://ide.cs50.io/ And CS50's Sandbox: https://sandbox.cs50.io/ The article Colton mentions about Resident Evil 2 on N64 (PDF): https://twvideo01.ubm-us.net/o1/vault/GD_Mag_Archives/GDM_September_2000.pdf The Steve Ballmer CS50 guest lecture: https://www.youtube.com/watch?v=7lhlKF6MECs And Steve Ballmer's sales pitch of CS50 itself: https://www.youtube.com/watch?v=El2mr5aS8y0 Fun fact: Brian Kernighan, whom David mentions as the CS50 teacher who preceded him, is also the co-creator of the C programming language. He's even has his own card in freeCodeCamp Programmer Playing Cards: https://www.freecodecamp.org/news/introducing-programmer-playing-cards-d3eeeffe9a11/

BSD Now
300: The Big Three

BSD Now

Play Episode Listen Later May 30, 2019 74:06


FreeBSD 11.3-beta 1 is out, BSDCan 2019 recap, OpenIndiana 2019.04 is out, Overview of ZFS Pools in FreeNAS, why open source firmware is important for security, a new Opnsense release, wireguard on OpenBSD, and more. Headlines FreeBSD 11.3-b1 is out BSDCan 2019 Recap We’re back from BSDCan and it was a packed week as always. It started with bhyvecon on Tuesday. Meanwhile, Benedict spent the whole day in productive meetings: annual FreeBSD Foundation board meeting and FreeBSD Journal editorial board meeting. On Wednesday, tutorials for BSDCan started as well as the FreeBSD Developer Summit. In the mornings, there were presentations in the big auditorium, while working groups about networking, failsafe bootcode, development web services, swap space management, and testing/CI were held. Friday had a similar format with an update from the FreeBSD core team and the “have, need, want” session for FreeBSD 13. In the afternoon, there were working groups about translation tools, package base, GSoC/Outreachy, or general hacking. Benedict held his Icinga tutorial in the afternoon with about 15 people attending. Devsummit presentation slides can be found on the wiki page and video recordings done by ScaleEngine are available on FreeBSD’s youtube channel. The conference program was a good mixture of sysadmin and tech talks across the major BSDs. Benedict saw the following talks: How ZFS snapshots really work by Matt Ahrens, 20 years in Jail by Michael W. Lucas, OpenZFS BOF session, the future of OpenZFS and FreeBSD, MQTT for system administrators by Jan-Piet Mens, and spent the rest of the time in between in the hallway track. Photos from the event are available on Ollivier Robert’s talegraph and Diane Bruce’s website for day 1, day 2, conference day 1, and conference day 2. Thanks to all the sponsors, supporters, organizers, speakers, and attendees for making this yet another great BSDCan. Next year’s BSDCan will be from June 2 - 6, 2020. OpenIndiana 2019.04 is out We have released a new OpenIndiana Hipster snapshot 2019.04. The noticeable changes: Firefox was updated to 60.6.3 ESR Virtualbox packages were added (including guest additions) Mate was updated to 1.22 IPS has received updates from OmniOS CE and Oracle IPS repos, including automatic boot environment naming Some OI-specific applications have been ported from Python 2.7/GTK 2 to Python 3.5/GTK 3 Quick Demo Video: https://www.youtube.com/watch?v=tQ0-fo3XNrg News Roundup Overview of ZFS Pools in FreeNAS FreeNAS uses the OpenZFS (ZFS) file system, which handles both disk and volume management. ZFS offers RAID options mirror, stripe, and its own parity distribution called RAIDZ that functions like RAID5 on hardware RAID. The file system is extremely flexible and secure, with various drive combinations, checksums, snapshots, and replication all possible. For a deeper dive on ZFS technology, read the ZFS Primer section of the FreeNAS documentation. SUGGEST LAYOUT attempts to balance usable capacity and redundancy by automatically choosing an ideal vdev layout for the number of available disks. The following vdev layout options are available when creating a pool: Stripe data is shared on two drives, similar to RAID0) Mirror copies data on two drives, similar to RAID1 but not limited to 2 disks) RAIDZ1 single parity similar to RAID5 RAIDZ2 double parity similar to RAID6 RAIDZ3 which uses triple parity and has no RAID equivalent Why OpenSource Firmware is Important for Security Roots of Trust The goal of the root of trust should be to verify that the software installed in every component of the hardware is the software that was intended. This way you can know without a doubt and verify if hardware has been hacked. Since we have very little to no visibility into the code running in a lot of places in our hardware it is hard to do this. How do we really know that the firmware in a component is not vulnerable or that is doesn’t have any backdoors? Well we can’t. Not unless it was all open source. Every cloud and vendor seems to have their own way of doing a root of trust. Microsoft has Cerberus, Google has Titan, and Amazon has Nitro. These seem to assume an explicit amount of trust in the proprietary code (the code we cannot see). This leaves me with not a great feeling. Wouldn’t it be better to be able to use all open source code? Then we could verify without a doubt that the code you can read and build yourself is the same code running on hardware for all the various places we have firmware. We could then verify that a machine was in a correct state without a doubt of it being vulnerable or with a backdoor. It makes me wonder what the smaller cloud providers like DigitalOcean or Packet have for a root of trust. Often times we only hear of these projects from the big three or five. OPNsense This update addresses several privilege escalation issues in the access control implementation and new memory disclosure issues in Intel CPUs. We would like to thank Arnaud Cordier and Bill Marquette for the top-notch reports and coordination. Here are the full patch notes: system: address CVE-2019-11816 privilege escalation bugs[1] (reported by Arnaud Cordier) system: /etc/hosts generation without interfacehasgateway() system: show correct timestamp in config restore save message (contributed by nhirokinet) system: list the commands for the pluginctl utility when n+ argument is given system: introduce and use userIsAdmin() helper function instead of checking for 'page-all' privilege directly system: use absolute path in widget ACLs (reported by Netgate) system: RRD-related cleanups for less code exposure interfaces: add EN DUID Generation using OPNsense PEN (contributed by Team Rebellion) interfaces: replace legacygetallinterface_addresses() usage firewall: fix port validation in aliases with leading / trailing spaces firewall: fix outbound NAT translation display in overview page firewall: prevent CARP outgoing packets from using the configured gateway firewall: use CARP net.inet.carp.demotion to control current demotion in status page firewall: stop live log poller on error result dhcpd: change rule priority to 1 to avoid bogon clash dnsmasq: only admins may edit custom options field firmware: use insecure mode for base and kernel sets when package fingerprints are disabled firmware: add optional device support for base and kernel sets firmware: add Hostcentral mirror (HTTP, Melbourne, Australia) ipsec: always reset rightallowany to default when writing configuration lang: say "hola" to Spanish as the newest available GUI language lang: updates for Chinese, Czech, Japanese, German, French, Russian and Portuguese network time: only admins may edit custom options field openvpn: call openvpnrefreshcrls() indirectly via plugin_configure() for less code exposure openvpn: only admins may edit custom options field to prevent privilege escalation (reported by Bill Marquette) openvpn: remove custom options field from wizard unbound: only admins may edit custom options field wizard: translate typehint as well plugins: os-freeradius 1.9.3 fixes string interpolation in LDAP filters (contributed by theq86) plugins: os-nginx 1.12[2] plugins: os-theme-cicada 1.17 (contributed by Team Rebellion) plugins: os-theme-tukan 1.17 (contributed by Team Rebellion) src: timezone database information update[3] src: install(1) broken with partially matching relative paths[4] src: microarchitectural Data Sampling (MDS) mitigation[5] ports: carootnss 3.44 ports: php 7.2.18[6] ports: sqlite 3.28.0[7] ports: strongswan custom XAuth generic patch removed wiregaurd on OpenBSD Earlier this week I imported a port for WireGuard into the OpenBSD ports tree. At the moment we have the userland daemon and the tools available. The in-kernel implementation is only available for Linux. At the time of writing there are packages available for -current. Jason A. Donenfeld (WireGuard author) has worked to support OpenBSD in WireGuard and as such his post on ports@ last year got me interested in WireGuard, since then others have toyed with WireGuard on OpenBSD before and as such I've used Ted's article as a reference. Note however that some of the options mentioned there are no longer valid. Also, I'll be using two OpenBSD peers here. The setup will be as follows: two OpenBSD peers, of which we'll dub wg1 the server and wg2 the client. The WireGuard service on wg1 is listening on 100.64.4.3:51820. Conclusion WireGuard (cl)aims to be easier to setup and faster than OpenVPN and while I haven't been able to verify the latter, the first is certainly true...once you've figured it out. Most documentation out there is for Linux so I had to figure out the wireguardgo service and the tun parameters. But all in all, sure, it's easier. Especially the client configuration on iOS which I didn't cover here because it's essentially pkgadd libqrencode ; cat client.conf | qrencode -t ansiutf8, scan the code with the WireGuard app and you're good to go. What is particularly neat is that WireGuard on iOS supports Always-on. Beastie Bits Serenity OS vkernels vs pmap Brian Kernighan interviews Ken Thompson Improvements in forking, threading, and signal code DragonFly 5.4.3 NetBSD on the Odroid C2 Feedback/Questions Paulo - Laptops A Listener - Thanks Bostjan - Extend a pool and lower RAM footprint Send questions, comments, show ideas/topics, or stories you want mentioned on the show to feedback@bsdnow.tv Your browser does not support the HTML5 video tag.

Model View Conversation
Episode 18: Ways to Learn, Part I

Model View Conversation

Play Episode Listen Later May 13, 2019 46:30


Ben and Brian discuss many different ways you can get started and learn about programming. So many ways in fact, we had to break it up into two parts! In this one we talk about books, onine tutorials, and podcasts. If none of those work for you, fear not as we tackle several more learning methods in part II. Stay tuned for that. Follow us on Twitter @mvcpodcast (https://www.twitter.com/mvcpodcast). Chapters 00:00 - Intro 01:17 - Ways to learn: books 21:01 - Online Tutorials 30:54 - Pro tip: contribute to open source 34:58 - Podcasts as a learning tool 45:45 - Outro Links Books The Pragmatic Programmer (https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition) by David Thomas, Andrew Hunt Don't Make Me Think (http://www.sensible.com/dmmt.html) by Steve Krug HTML & CSS: Design and Build Websites (http://www.htmlandcssbook.com) by Jon Duckett Apple Human Interface Guidelines (https://developer.apple.com/design/human-interface-guidelines/ios/overview/themes/) The C Programming Language (https://www.amazon.com/exec/obidos/ASIN/0131103628/lynnallain) by Brian Kernighan, Dennis Ritchie The Structure and Interpretation of Computer Programs (https://www.amazon.com/Structure-Interpretation-Computer-Programs-Engineering/dp/0262510871) by Harold Abelson, Gerald Jay Sussman, Julie Sussman The Non-Designer's Design Book (https://www.amazon.com/Non-Designers-Design-Book-4th/dp/0133966151/ref=sr_1_1) by Robin Williams Podcasts Syntax (https://syntax.fm) with Wes Bos and Scott Tolinski DevChat (https://devchat.tv) Podcast Network Under the Radar (https://www.relay.fm/radar) with Marco Arment and David Smith Accidental Tech Podcast (https://atp.fm) with Marco Arment, John Siracusa, and Casey Liss Full Stack Radio (http://www.fullstackradio.com) with Adam Wathan Shop Talk Show (https://shoptalkshow.com) with Dave Rupert and Chris Coyier The Art of Product (https://artofproductpodcast.com) with Ben Orenstein and Derrick Reimer

Numbers Geek with Steve Ballmer
Wrong Number? How to detect bogus data in the news

Numbers Geek with Steve Ballmer

Play Episode Listen Later Jan 18, 2019 24:04


On this episode of Numbers Geek, we’ll talk with someone who specializes in recognizing "bogus and misleading" numbers in media coverage and public statements: Brian Kernighan, a Princeton University computer science professor and the author of a new book, “Millions, Billions, Zillions: Defending Yourself in a World of Too Many Numbers.” Then we'll use those techniques to sniff out false and misleading statements from public officials on military spending, with help from our Resident Numbers Geek, Steve Ballmer.

All JavaScript Podcasts by Devchat.tv
MJS 079: Michael Garrigan

All JavaScript Podcasts by Devchat.tv

Play Episode Listen Later Oct 3, 2018 33:31


Panel: Charles Max Wood Guest: Michael Garrigan This week on My JavaScript Story, Charles speaks with http://michaelgarrigan.com who is one of the podcast’s listeners. He is changing careers midway and has had many exciting careers in the past, such as being a professional chef, carpenter, repairman, and so on. Listen to today’s episode to hear Michael’s unique experience with programming and JavaScript. In particular, we dive pretty deep on: 1:18 – Chuck: I started this show but interviewing guests and then opened up to listeners. Michael scheduled an interview and here we go! I find that his experience will be different than mine than others. We will be getting guests on here, but wanted this to be a well-rounded view within the community. 2:25 – Michael’s background! His experience is a mid-career change. To see the things that are intimidating and exciting. 3:16 – How did you get into programming? 3:23 – Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The C programming language, I saw as the “grandfather” program. That’s the first thing I looked at. Then I was like, “what is going on?” I got a copy of the original K&R book and worked through that. 4:58 – Chuck: I did the C language in college. The Java that I was learning then was less complicated. How did you end up with JavaScript then? 5:26 – Guest: It was easy and you can just open up a console and it works. You want to see things happen visually when you program is great. It’s a great entry point. We started building things in React and how fun that is. I enjoy JavaScript in general. 6:11 – Chuck: What is your career transition? 6:18 – Guest: I have always been a craftsman and building things. I had a portion time I was a professional chef, which is the cold side like sausages and meats and cheeses, etc. I used to do a lot of ice carvings, too. Stopped that and opened a small business and repaired antique furniture for people. Wicker restoration. It was super cool because it was 100+ years old. To see what people did very well was enjoyable. Every few years I wanted to see how something worked, and that’s how I got into it. That was the gateway to something that was scary to something that made programs. 8:24 – Chuck: I was working in IT and wrote a system that managed updates across multiple servers. There is some automation I can do here, and it grew to something else. What made you switch? Were you were looking for something more lucrative? 9:01 – Michael: Main motivation I appreciate the logic behind it. I always build physical items. To build items that are non-physical is kind of different. Using logic to essentially put out a giant instruction sheet is fun. 9:52 – Chuck: At what point do you say I want to do a boot camp? 10:04 – Michael: I might to this as a career. Hobby level and going to work is definitely different. I could see myself getting up every day and going to meetings and talking about these topics and different issues. Coding day to day. 10:51 – Chuck: Who did you talk to who got you started? 10:57 – Guest: Things I read online and friends. They said get the basics behind programming. Languages come and go. Be able to learn quickly and learn the basics. 12:13 – Chuck: In NY city? It’s pricy to live there. 12:33 – Guest: Cost of living is much greater. 12:42 – Chuck: What was it like to go to a boot camp? 12:50 – Guest answers question. 14:30 – Advertisement – Get a Coder Job 15:11 – Chuck: What different projects have you worked on? 15:19 – Guest talks about his many different projects. Like senses.gov. 18:11 – Michael: Working on getting a job. I put together a portfolio and just graduated this past week. 19:38 – Charles: Anything that has been a huge challenge for you? 19:47 – Not really just one. I’ve done big projects in the past. Seeing that I can do them and sheer amount of work that I have put in. Not really too concerned. Only concern is that mid-30s any bias that is out there. I don’t think that will really affect me. 20:25 – Chuck: Yeah, it’s rally not age-bias. 20:55 – Michael: “Making your bones” is an expression in culinary school. That means that you put in the hours in the beginning to become a professional at it. So I have had transitioned several times and each time I had to make my bones and put in the time, so I am not looking forward to that for me right now, but... 21:43 – Chuck: Anything else? 21:51 – Guest: Meetups. 22:40 – Chuck: I have been putting time into making this book. 22:53 – Guest puts in his last comments. 24:00 – Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV. 25:14 – Chuck: It’s a big deal to get out of debt. My wife and I will be at the end of the year. 25:37 – Guest: Discipline not to spend money, and peer pressure. 25:48 – Picks! 25:57 – Advertisement for Digital Ocean! Links: Book Dave Ramsey: Introducing Our Brand-New Book! Hack Reactor JavaScript Meetup Michaelgarrigan.com – website Sponsors: Code Badge Digital Ocean Cache Fly Get A Coder Job Picks: Charles TNT – The Last Ship Board game – Pandemic Legacy Kickstarter – Code Badges Michael Garrigan Brad’s YouTube channel - ½ million subscribers Michaelgarrigan.com – website

My JavaScript Story
MJS 079: Michael Garrigan

My JavaScript Story

Play Episode Listen Later Oct 3, 2018 33:31


Panel: Charles Max Wood Guest: Michael Garrigan This week on My JavaScript Story, Charles speaks with http://michaelgarrigan.com who is one of the podcast’s listeners. He is changing careers midway and has had many exciting careers in the past, such as being a professional chef, carpenter, repairman, and so on. Listen to today’s episode to hear Michael’s unique experience with programming and JavaScript. In particular, we dive pretty deep on: 1:18 – Chuck: I started this show but interviewing guests and then opened up to listeners. Michael scheduled an interview and here we go! I find that his experience will be different than mine than others. We will be getting guests on here, but wanted this to be a well-rounded view within the community. 2:25 – Michael’s background! His experience is a mid-career change. To see the things that are intimidating and exciting. 3:16 – How did you get into programming? 3:23 – Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The C programming language, I saw as the “grandfather” program. That’s the first thing I looked at. Then I was like, “what is going on?” I got a copy of the original K&R book and worked through that. 4:58 – Chuck: I did the C language in college. The Java that I was learning then was less complicated. How did you end up with JavaScript then? 5:26 – Guest: It was easy and you can just open up a console and it works. You want to see things happen visually when you program is great. It’s a great entry point. We started building things in React and how fun that is. I enjoy JavaScript in general. 6:11 – Chuck: What is your career transition? 6:18 – Guest: I have always been a craftsman and building things. I had a portion time I was a professional chef, which is the cold side like sausages and meats and cheeses, etc. I used to do a lot of ice carvings, too. Stopped that and opened a small business and repaired antique furniture for people. Wicker restoration. It was super cool because it was 100+ years old. To see what people did very well was enjoyable. Every few years I wanted to see how something worked, and that’s how I got into it. That was the gateway to something that was scary to something that made programs. 8:24 – Chuck: I was working in IT and wrote a system that managed updates across multiple servers. There is some automation I can do here, and it grew to something else. What made you switch? Were you were looking for something more lucrative? 9:01 – Michael: Main motivation I appreciate the logic behind it. I always build physical items. To build items that are non-physical is kind of different. Using logic to essentially put out a giant instruction sheet is fun. 9:52 – Chuck: At what point do you say I want to do a boot camp? 10:04 – Michael: I might to this as a career. Hobby level and going to work is definitely different. I could see myself getting up every day and going to meetings and talking about these topics and different issues. Coding day to day. 10:51 – Chuck: Who did you talk to who got you started? 10:57 – Guest: Things I read online and friends. They said get the basics behind programming. Languages come and go. Be able to learn quickly and learn the basics. 12:13 – Chuck: In NY city? It’s pricy to live there. 12:33 – Guest: Cost of living is much greater. 12:42 – Chuck: What was it like to go to a boot camp? 12:50 – Guest answers question. 14:30 – Advertisement – Get a Coder Job 15:11 – Chuck: What different projects have you worked on? 15:19 – Guest talks about his many different projects. Like senses.gov. 18:11 – Michael: Working on getting a job. I put together a portfolio and just graduated this past week. 19:38 – Charles: Anything that has been a huge challenge for you? 19:47 – Not really just one. I’ve done big projects in the past. Seeing that I can do them and sheer amount of work that I have put in. Not really too concerned. Only concern is that mid-30s any bias that is out there. I don’t think that will really affect me. 20:25 – Chuck: Yeah, it’s rally not age-bias. 20:55 – Michael: “Making your bones” is an expression in culinary school. That means that you put in the hours in the beginning to become a professional at it. So I have had transitioned several times and each time I had to make my bones and put in the time, so I am not looking forward to that for me right now, but... 21:43 – Chuck: Anything else? 21:51 – Guest: Meetups. 22:40 – Chuck: I have been putting time into making this book. 22:53 – Guest puts in his last comments. 24:00 – Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV. 25:14 – Chuck: It’s a big deal to get out of debt. My wife and I will be at the end of the year. 25:37 – Guest: Discipline not to spend money, and peer pressure. 25:48 – Picks! 25:57 – Advertisement for Digital Ocean! Links: Book Dave Ramsey: Introducing Our Brand-New Book! Hack Reactor JavaScript Meetup Michaelgarrigan.com – website Sponsors: Code Badge Digital Ocean Cache Fly Get A Coder Job Picks: Charles TNT – The Last Ship Board game – Pandemic Legacy Kickstarter – Code Badges Michael Garrigan Brad’s YouTube channel - ½ million subscribers Michaelgarrigan.com – website

Devchat.tv Master Feed
MJS 079: Michael Garrigan

Devchat.tv Master Feed

Play Episode Listen Later Oct 3, 2018 33:31


Panel: Charles Max Wood Guest: Michael Garrigan This week on My JavaScript Story, Charles speaks with http://michaelgarrigan.com who is one of the podcast’s listeners. He is changing careers midway and has had many exciting careers in the past, such as being a professional chef, carpenter, repairman, and so on. Listen to today’s episode to hear Michael’s unique experience with programming and JavaScript. In particular, we dive pretty deep on: 1:18 – Chuck: I started this show but interviewing guests and then opened up to listeners. Michael scheduled an interview and here we go! I find that his experience will be different than mine than others. We will be getting guests on here, but wanted this to be a well-rounded view within the community. 2:25 – Michael’s background! His experience is a mid-career change. To see the things that are intimidating and exciting. 3:16 – How did you get into programming? 3:23 – Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The C programming language, I saw as the “grandfather” program. That’s the first thing I looked at. Then I was like, “what is going on?” I got a copy of the original K&R book and worked through that. 4:58 – Chuck: I did the C language in college. The Java that I was learning then was less complicated. How did you end up with JavaScript then? 5:26 – Guest: It was easy and you can just open up a console and it works. You want to see things happen visually when you program is great. It’s a great entry point. We started building things in React and how fun that is. I enjoy JavaScript in general. 6:11 – Chuck: What is your career transition? 6:18 – Guest: I have always been a craftsman and building things. I had a portion time I was a professional chef, which is the cold side like sausages and meats and cheeses, etc. I used to do a lot of ice carvings, too. Stopped that and opened a small business and repaired antique furniture for people. Wicker restoration. It was super cool because it was 100+ years old. To see what people did very well was enjoyable. Every few years I wanted to see how something worked, and that’s how I got into it. That was the gateway to something that was scary to something that made programs. 8:24 – Chuck: I was working in IT and wrote a system that managed updates across multiple servers. There is some automation I can do here, and it grew to something else. What made you switch? Were you were looking for something more lucrative? 9:01 – Michael: Main motivation I appreciate the logic behind it. I always build physical items. To build items that are non-physical is kind of different. Using logic to essentially put out a giant instruction sheet is fun. 9:52 – Chuck: At what point do you say I want to do a boot camp? 10:04 – Michael: I might to this as a career. Hobby level and going to work is definitely different. I could see myself getting up every day and going to meetings and talking about these topics and different issues. Coding day to day. 10:51 – Chuck: Who did you talk to who got you started? 10:57 – Guest: Things I read online and friends. They said get the basics behind programming. Languages come and go. Be able to learn quickly and learn the basics. 12:13 – Chuck: In NY city? It’s pricy to live there. 12:33 – Guest: Cost of living is much greater. 12:42 – Chuck: What was it like to go to a boot camp? 12:50 – Guest answers question. 14:30 – Advertisement – Get a Coder Job 15:11 – Chuck: What different projects have you worked on? 15:19 – Guest talks about his many different projects. Like senses.gov. 18:11 – Michael: Working on getting a job. I put together a portfolio and just graduated this past week. 19:38 – Charles: Anything that has been a huge challenge for you? 19:47 – Not really just one. I’ve done big projects in the past. Seeing that I can do them and sheer amount of work that I have put in. Not really too concerned. Only concern is that mid-30s any bias that is out there. I don’t think that will really affect me. 20:25 – Chuck: Yeah, it’s rally not age-bias. 20:55 – Michael: “Making your bones” is an expression in culinary school. That means that you put in the hours in the beginning to become a professional at it. So I have had transitioned several times and each time I had to make my bones and put in the time, so I am not looking forward to that for me right now, but... 21:43 – Chuck: Anything else? 21:51 – Guest: Meetups. 22:40 – Chuck: I have been putting time into making this book. 22:53 – Guest puts in his last comments. 24:00 – Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV. 25:14 – Chuck: It’s a big deal to get out of debt. My wife and I will be at the end of the year. 25:37 – Guest: Discipline not to spend money, and peer pressure. 25:48 – Picks! 25:57 – Advertisement for Digital Ocean! Links: Book Dave Ramsey: Introducing Our Brand-New Book! Hack Reactor JavaScript Meetup Michaelgarrigan.com – website Sponsors: Code Badge Digital Ocean Cache Fly Get A Coder Job Picks: Charles TNT – The Last Ship Board game – Pandemic Legacy Kickstarter – Code Badges Michael Garrigan Brad’s YouTube channel - ½ million subscribers Michaelgarrigan.com – website

The Art of Product
35: Conducting Customer Development Interviews

The Art of Product

Play Episode Listen Later Mar 29, 2018 46:02


As part of his new business journey, Derrick requested that customers schedule time to talk with him about Level, a team communication and management tool he is developing. Luckily, about 40 people signed up, and he has completed 14 of these calls. What are his customers saying? They confirm main pains they feel with current tools and are very willing to share their frustrations with existing tools. Derrick has not been surprised yet about their answers. In Ben’s world, he is spending time on slinging and reading about Haskell. He is full of questions. Both Ben and Derrick are learning a lot every day, which is fulfilling and exciting. Today’s Topics Include: Level will not be a project management tool, but may have some project management capabilities Derrick’s list of initial questions for customers: What is their company and role within it; the size of their team; what tools they use and when they adopted them; and the balance between chat, email, and project management in their organization Derrick also asks customers: Why are they interested in Level? What problems do they want it to solve? What’s working well for them with Slack, and what’s not? What aspects of Slack do they use and don’t use? Ideas for improvement have come from Derrick’s customers Continuous integration is the clear winner for usefulness Gauging willingness to switch to another tool, such as Level Customers expressed using Level on a pilot basis for specific teams or projects and in coordination with at least one other tool Being unable to post asynchronous, long-form discussions is a pain point for some customers Paying for a tool would not be a big deal Derrick plans to kick off his building Level series and build mock-ups for customers to view Positive use of minimalist user interfaces Debating whether to offer a pre-payment option for Level Ben uses Ansible for the deployment of Haskell code Ben is seeking a Dev Ops person to hire - must have strong opinions and can fix stuff SaaS Renaissance? More developers are starting SaaS companies - a trend already on the way out? Level will be SaaS but with an open source core Tools SaaS companies will want to have and buy Not Built Here Syndrome: Engineers who outsource non-essential parts to someone else Pricing Pages as a Service: Shopify’s checkout page feels natural but still represents the company Avoid rebuilding stuff If you’re enjoying the show please give us your ratings and reviews in iTunes. Links and resources: Ben Orenstein Website (http://www.benorenstein.com/); Twitter (https://twitter.com/derrickreimer) Derrick Reimer Website (http://www.derrickreimer.com/) Basecamp (https://basecamp.com/) and Getting Real (https://www.youtube.com/channel/UCdx5Dk3EWTe2i8YDA7bfl6g) Haskell (https://www.haskell.org/) Programming in Haskell book (https://www.amazon.com/Programming-Haskell-Graham-Hutton/dp/0521692695) C Programming Language (https://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628) by Brian Kernighan and Dennis Ritchie (K&R for C) Ruby on Rails (http://rubyonrails.org/) Ansible (https://www.ansible.com/) Drip Salesforce (https://www.salesforce.com/) Product Hunt (https://www.producthunt.com/) GitLab (https://gitlab.com/)and Discourse (https://github.com/discourse/discourse) Stripe Atlas (https://stripe.com/atlas) Andrew Culver’s Bullet Train (https://twitter.com/i/moments/906824077612109824?lang=en) Adam Savage: One Day Builds (https://www.youtube.com/playlist?list=PLKqXxhKj-VjqKzdBYPeqQUM2No2Ps7qU3) MicroConf 2018 (http://www.microconf.com/)

Greatest Hits – Software Engineering Daily
Language Design with Brian Kernighan Holiday Repeat

Greatest Hits – Software Engineering Daily

Play Episode Listen Later Dec 28, 2017 69:14


Originally published January 6, 2016 “The best computer science is the kind where the theory is inspired by some practical problem, you develop a better theoretical understanding of what you want to do, and that feeds back into better practice.” Brian Kernighan is a professor of computer science at Princeton University and the author of The post Language Design with Brian Kernighan Holiday Repeat appeared first on Software Engineering Daily.

Hackers – Software Engineering Daily
Language Design with Brian Kernighan Holiday Repeat

Hackers – Software Engineering Daily

Play Episode Listen Later Dec 28, 2017 69:14


Originally published January 6, 2016 “The best computer science is the kind where the theory is inspired by some practical problem, you develop a better theoretical understanding of what you want to do, and that feeds back into better practice.” Brian Kernighan is a professor of computer science at Princeton University and the author of The post Language Design with Brian Kernighan Holiday Repeat appeared first on Software Engineering Daily.

BSD Now
214: The history of man, kind

BSD Now

Play Episode Listen Later Oct 4, 2017 90:20


The costs of open sourcing a project are explored, we discover why PS4 downloads are so slow, delve into the history of UNIX man pages, and more. This episode was brought to you by Headlines The Cost Of Open Sourcing Your Project (https://meshedinsights.com/2016/09/20/open-source-unlikely-to-be-abandonware/) Accusing a company of “dumping” their project as open source is probably misplaced – it's an expensive business no-one would do frivolously. If you see an active move to change software licensing or governance, it's likely someone is paying for it and thus could justify the expense to an executive. A Little History Some case study cameos may help. From 2004 onwards, Sun Microsystems had a policy of all its software moving to open source. The company migrated almost all products to open source licenses, and had varying degrees of success engaging communities around the various projects, largely related to the outlooks of the product management and Sun developers for the project. Sun occasionally received requests to make older, retired products open source. For example, Sun acquired a company called Lighthouse Design which created a respected suite of office productivity software for Steve Jobs' NeXT platform. Strategy changes meant that software headed for the vault (while Jonathan Schwartz, a founder of Lighthouse, headed for the executive suite). Members of the public asked if Sun would open source some of this software, but these requests were declined because there was no business unit willing to fund the move. When Sun was later bought by Oracle, a number of those projects that had been made open source were abandoned. “Abandoning” software doesn't mean leaving it for others; it means simply walking away from wherever you left it. In the case of Sun's popular identity middleware products, that meant Oracle let the staff go and tried to migrate customers to other products, while remaining silent in public on the future of the project. But the code was already open source, so the user community was able to pick up the pieces and carry on, with help from Forgerock. It costs a lot of money to open source a mature piece of commercial software, even if all you are doing is “throwing a tarball over the wall”. That's why companies abandoning software they no longer care about so rarely make it open source, and those abandoning open source projects rarely move them to new homes that benefit others. If all you have thought about is the eventual outcome, you may be surprised how expensive it is to get there. Costs include: For throwing a tarball over the wall: Legal clearance. Having the right to use the software is not the same as giving everyone in the world an unrestricted right to use it and create derivatives. Checking every line of code to make sure you have the rights necessary to release under an OSI-approved license is a big task requiring high-value employees on the “liberation team”. That includes both developers and lawyers; neither come cheap. Repackaging. To pass it to others, a self-contained package containing all necessary source code, build scripts and non-public source and tool dependencies has to be created since it is quite unlikely to exist internally. Again, the liberation team will need your best developers. Preserving provenance. Just because you have confidence that you have the rights to the code, that doesn't mean anyone else will. The version control system probably contains much of the information that gives confidence about who wrote which code, so the repackaging needs to also include a way to migrate the commit information. Code cleaning. The file headers will hopefully include origin information but the liberation team had better check. They also need to check the comments for libel and profanities, not to mention trade secrets (especially those from third parties) and other IP issues. For a sustainable project, all the above plus: Compliance with host governance. It is a fantastic idea to move your project to a host like Apache, Conservancy, Public Software and so on. But doing so requires preparatory work. As a minimum you will need to negotiate with the new host organisation, and they may well need you to satisfy their process requirements. Paperwork obviously, but also the code may need conforming copyright statements and more. That's more work for your liberation team. Migration of rights. Your code has an existing community who will need to migrate to your new host. That includes your staff – they are community too! They will need commit rights, governance rights, social media rights and more. Your liberation team will need your community manager, obviously, but may also need HR input. Endowment. Keeping your project alive will take money. It's all been coming from you up to this point, but if you simply walk away before the financial burden has been accepted by the new community and hosts there may be a problem. You should consider making an endowment to your new host to pay for their migration costs plus the cost of hosting the community for at least a year. Marketing. Explaining the move you are making, the reasons why you are making it and the benefits for you and the community is important. If you don't do it, there are plenty of trolls around who will do it for you. Creating a news blog post and an FAQ — the minimum effort necessary — really does take someone experienced and you'll want to add such a person to your liberation team. Motivations There has to be some commercial reason that makes the time, effort and thus expense worth incurring. Some examples of motivations include: Market Strategy. An increasing number of companies are choosing to create substantial, openly-governed open source communities around software that contributes to their business. An open multi-stakeholder co-developer community is an excellent vehicle for innovation at the lowest cost to all involved. As long as your market strategy doesn't require creating artificial scarcity. Contract with a third party. While the owner of the code may no longer be interested, there may be one or more parties to which they owe a contractual responsibility. Rather than breaching that contract, or buying it out, a move to open source may be better. Some sources suggest a contractual obligation to IBM was the reason Oracle abandoned OpenOffice.org by moving it over to the Apache Software Foundation for example. Larger dependent ecosystem. You may have no further use for the code itself, but you may well have other parts of your business which depend on it. If they are willing to collectively fund development you might consider an “inner source” strategy which will save you many of the costs above. But the best way to proceed may well be to open the code so your teams and those in other companies can fund the code. Internal politics. From the outside, corporations look monolithic, but from the inside it becomes clear they are a microcosm of the market in which they exist. As a result, they have political machinations that may be addressed by open source. One of Oracle's motivations for moving NetBeans to Apache seems to have been political. Despite multiple internal groups needing it to exist, the code was not generating enough direct revenue to satisfy successive executive owners, who allegedly tried to abandon it on more than one occasion. Donating it to Apache meant that couldn't happen again. None of this is to say a move to open source guarantees the success of a project. A “Field of Dreams” strategy only works in the movies, after all. But while it may be tempting to look at a failed corporate liberation and describe it as “abandonware”, chances are it was intended as nothing of the kind. Why PS4 downloads are so slow (https://www.snellman.net/blog/archive/2017-08-19-slow-ps4-downloads/) From the blog that brought us “The origins of XXX as FIXME (https://www.snellman.net/blog/archive/2017-04-17-xxx-fixme/)” and “The mystery of the hanging S3 downloads (https://www.snellman.net/blog/archive/2017-07-20-s3-mystery/)”, this week it is: “Why are PS4 downloads so slow?” Game downloads on PS4 have a reputation of being very slow, with many people reporting downloads being an order of magnitude faster on Steam or Xbox. This had long been on my list of things to look into, but at a pretty low priority. After all, the PS4 operating system is based on a reasonably modern FreeBSD (9.0), so there should not be any crippling issues in the TCP stack. The implication is that the problem is something boring, like an inadequately dimensioned CDN. But then I heard that people were successfully using local HTTP proxies as a workaround. It should be pretty rare for that to actually help with download speeds, which made this sound like a much more interesting problem. Before running any experiments, it's good to have a mental model of how the thing we're testing works, and where the problems might be. If nothing else, it will guide the initial experiment design. The speed of a steady-state TCP connection is basically defined by three numbers. The amount of data the client is will to receive on a single round-trip (TCP receive window), the amount of data the server is willing to send on a single round-trip (TCP congestion window), and the round trip latency between the client and the server (RTT). To a first approximation, the connection speed will be: speed = min(rwin, cwin) / RTT With this model, how could a proxy speed up the connection? The speed through the proxy should be the minimum of the speed between the client and proxy, and the proxy and server. It should only possibly be slower With a local proxy the client-proxy RTT will be very low; that connection is almost guaranteed to be the faster one. The improvement will have to be from the server-proxy connection being somehow better than the direct client-server one. The RTT will not change, so there are just two options: either the client has a much smaller receive window than the proxy, or the client is somehow causing the server's congestion window to decrease. (E.g. the client is randomly dropping received packets, while the proxy isn't). After setting up a test rig, where the PS4's connection was bridged through a linux box so packets could be captured, and artificial latency could be added, some interested results came up: The differences in receive windows at different times are striking. And more important, the changes in the receive windows correspond very well to specific things I did on the PS4 When the download was started, the game Styx: Shards of Darkness was running in the background (just idling in the title screen). The download was limited by a receive window of under 7kB. This is an incredibly low value; it's basically going to cause the downloads to take 100 times longer than they should. And this was not a coincidence, whenever that game was running, the receive window would be that low. Having an app running (e.g. Netflix, Spotify) limited the receive window to 128kB, for about a 5x reduction in potential download speed. Moving apps, games, or the download window to the foreground or background didn't have any effect on the receive window. Playing an online match in a networked game (Dreadnought) caused the receive window to be artificially limited to 7kB. I ran a speedtest at a time when downloads were limited to 7kB receive window. It got a decent receive window of over 400kB; the conclusion is that the artificial receive window limit appears to only apply to PSN downloads. When a game was started (causing the previously running game to be stopped automatically), the receive window could increase to 650kB for a very brief period of time. Basically it appears that the receive window gets unclamped when the old game stops, and then clamped again a few seconds later when the new game actually starts up. I did a few more test runs, and all of them seemed to support the above findings. The only additional information from that testing is that the rest mode behavior was dependent on the PS4 settings. Originally I had it set up to suspend apps when in rest mode. If that setting was disabled, the apps would be closed when entering in rest mode, and the downloads would proceed at full speed. The PS4 doesn't make it very obvious exactly what programs are running. For games, the interaction model is that opening a new game closes the previously running one. This is not how other apps work; they remain in the background indefinitely until you explicitly close them. So, FreeBSD and its network stack are not to blame Sony used a poor method to try to keep downloads from interfering with your gameplay The impact of changing the receive window is highly dependant upon RTT, so it doesn't work as evenly as actual traffic shaping or queueing would. An interesting deep dive, it is well worth reading the full article and checking out the graphs *** OpenSSH 7.6 Released (http://www.openssh.com/releasenotes.html#7.6) From the release notes: This release includes a number of changes that may affect existing configurations: ssh(1): delete SSH protocol version 1 support, associated configuration options and documentation. ssh(1)/sshd(8): remove support for the hmac-ripemd160 MAC. ssh(1)/sshd(8): remove support for the arcfour, blowfish and CAST Refuse RSA keys

Greatest Hits – Software Engineering Daily
Language Design with Brian Kernighan

Greatest Hits – Software Engineering Daily

Play Episode Listen Later Jan 5, 2016 69:16


“The best computer science is the kind where the theory is inspired by some practical problem, you develop a better theoretical understanding of what you want to do, and that feeds back into better practice.” Continue reading… The post Language Design with Brian Kernighan appeared first on Software Engineering Daily.

Hackers – Software Engineering Daily
Language Design with Brian Kernighan

Hackers – Software Engineering Daily

Play Episode Listen Later Jan 5, 2016 69:16


“The best computer science is the kind where the theory is inspired by some practical problem, you develop a better theoretical understanding of what you want to do, and that feeds back into better practice.” Continue reading… The post Language Design with Brian Kernighan appeared first on Software Engineering Daily.

Princeton Alumni Weekly Podcasts
PAW Tracks: Digital Dawn

Princeton Alumni Weekly Podcasts

Play Episode Listen Later Dec 17, 2014 10:18


Brian Kernighan *69, co-author of classic texts including The C Programming Language, came to Princeton in 1964, when the campus had just one computer. He went on to a rewarding career at Bell Labs and returned to the University as a professor, teaching popular courses for both computer-science majors and less tech-inclined students.

The Retrobits Podcast
Show 065: The C Programming Language, Part II

The Retrobits Podcast

Play Episode Listen Later Nov 13, 2006 38:15


  Floating point numbers keep it real.Welcome to Show 065!  This week's Topic: The C Programming Language, Part II! Topics and links discussed in the podcast... The World of Commodore 2006 is coming on Dec 2, 2006 in Toronto, Ontario, Canada!  Check out the info at the TPUG web site.If you want to try C/C++ (or C#, or VB.NET), have a look at the free Visual Studio 2005 Express Editions from Microsoft.Another great option for C/C++ on Windows and DOS is OpenWatcom!If C for the 6502 is your goal, then cc65 has just the compiler for you...Specifically for the Commodore 64 and 128, here's some information on a popular compiler, Power C!Brian Kernighan, co-author of The C Programming Language, has a website here.  You can read about him on Wikipedia here...Dennis Ritchie, creator of C and co-author of The C Programming Language, has a website here, and Wikipedia info here...The GE-600 (otherwise known as Honeywell 6000) with the funky 36 bit C variables?  Read about it at Wikipedia here...Finally, some history of the evolution of the C language can be found at faqs.org! Be sure to send any comments, questions or feedback to retrobits@gmail.com. For online discussions on Retrobits Podcast topics, check out the Retrobits Podcast forum on the PETSCII Forums page! Our Theme Song is "Sweet" from the "Re-Think" album by Galigan. Thanks for listening! - Earl