Software Engineering Daily

Software Engineering Daily

By Software Engineering DailyNewsTechnologyTech News
Download on the App Store

Software Engineering Daily episodes

  • Developer Tea with Jonathan Cutrell

    “Our field moves so quickly that learning is kind of a fundamental skill – not every field is that way.”

    Software engineering combines art, science, and philosophy. On the Developer Tea podcast, Jonathan Cutrell explores how engineers can improve their technical ability as well as their interpersonal skills and mental clarity. On this episode of Software Engineering Daily, Jeff and Jonathan about focus, career development, and software podcasting.

    Jonathan Cutrell is the founder and host of Developer Tea. He is also the Director of Technology at Whiteboard.

    Questions
    • What are the most crucial soft skills that engineers should focus on improving?
    • Is trying to multithread our physical tasks a mistake?
    • How should people think about splitting their time between a full-time job and side projects?
    • How can engineers learn to learn more effectively?
    • What are the topics your listeners have wanted to hear about the most?
    • What are your plans for the future of Developer Tea?
    • Links
      • Developer Tea
      • Auren Hoffman on Quora
      • Serial Podcast
      • Ruby Rogues
      • Shop Talk
      • It Might Get Loud
      • Spec
      • Jonathan’s personal page
      • The post Developer Tea with Jonathan Cutrell appeared first on Software Engineering Daily.

        1 hr 2 min
      • OpenGov with Andrew Clark

        “By the time I joined, people were already starting to have this microservice fatigue.”

        Software is changing every domain including Marketing, Healthcare, and even Agriculture. Government is one specific area where the potential for improvement is obvious. Governments are often defined by abstract rules, transactions, permissions and hierarchies, grounded on some fundamental principles – this is striking similar to the same tenets that software and computer science are based on. In that sense, could software be leveraged in this unique industry to create massive change?

        OpenGov is one company trying to find out through application of software in local city and state governments. The company currently offers a web-based financial visualization software that focuses on making government budget and financial data accessible by modeling and presenting it in a user-friendly way. But it is not farfetched to see the potential being greater and broader in scope. In this episode, Jeff discussed with Andrew how OpenGov is using technology to improve government. Their conversation focuses in on the front-end technologies used to create the webapp, as well as “microservice fatigue” and the other various architectural concerns within the team.

        Andrew Clark is a software engineer at OpenGov.

        Questions
        • What is Opengov?
        • What is the tech stack behind Opengov?
        • How has the paradigm in which you write code changed?
        • What is it about Elm and Ohm that are so appealing?
        • What will your talk Back to React be about?
        • In what ways have Ember and Angular changed post React?
        • What is the big vision that OpenGov is working towards?
        • Links
          • OpenGov
          • Flow, a new static type checker for JavaScript
          • GraphQL and Relay with Nick Schrock
          • GraphQL
          • Relay
          • React.js Conf
          • Andrew Clark
          • The post OpenGov with Andrew Clark appeared first on Software Engineering Daily.

            1 hr 2 min
          • Teaching Inmates to Code with Wes Bailey

            “This is a group of people who largely have been told their entire life that they’re failures – we’re going in and we’re saying ‘Hey this is just about the most complex thing that humanity has ever done, why don’t you give it a try?’ ”

            Incarceration in the United States is often a punitive exercise rather than a rehabilitative one. As a consequence, recidivism is the norm – according to a 2012 report by the California Department of Corrections and Rehabilitation, just over 65% of those released from California’s prison system return within three years. San Quentin State Prison in California is challenging this issue by trying to equip inmates with valuable skills while they are incarcerated.

            The Last Mile is a program that works with prisoners to help them build relevant skills in technology so that they can more easily transition to productive employment once they are out of prison. Specifically, it teaches inmates how to program, oftentimes starting at the basics like how to use a computer, and how hypertext works. In addition to the challenges of teaching students who may not know computer basics, the program has to work with the constraint of not having internet access. In this episode, Wes and Jeff discuss the realities of incarceration in the United States, and how teaching inmates how to code is a remarkably empowering way to combat and weaken the prison-industrial complex.

            Wes Bailey is the Director of Program Operations at The Last Mile, and a self-taught developer.

            Questions
            • How did The Last Mile get started?
            • Should everyone become an entrepreneur?
            • How does the curriculum of a coding bootcamp compare to that of The Last Mile?
            • What are the challenges to teaching programming without an internet connection?
            • Do you notice imposter syndrome in the inmates at San Quentin who are part of The Last Mile?
            • What motivates you to work on The Last Mile?
            • What lies at the root of the prison-industrial complex?
            • Links
              • The Last Mile
              • Chris Redlitz
              • Mozilla Developer Network
              • Healthy Hearts
              • The post Teaching Inmates to Code with Wes Bailey appeared first on Software Engineering Daily.

                1 hr 1 min
              • Digital Transformation of Government with Sarah Allen

                “When we say a ‘21st century government’, what we’re seeing is that people are using their smartphones, they’re online, and we have the potential to actually deliver better services to our people at dramatically lower costs.”

                Governments are often laggards in the adoption of new technology. Every aspect of life, from transportation to healthcare, are being affected by the convergence of several trends including connected mobile devices, cloud storage and distributed systems. Yet federal services are in many cases still incapable of delivering the best and most affordable services to citizens.

                The most visible instance of the U.S. government struggling to modernize was the implementation of Healthcare.gov. What was originally a modest budget for deploying the web marketplace of the Affordable Care Act ballooned into a costly implementation that required hiring external consultants and developers to fix. In response to this dysfunction, 18F was formed with the mission to simplify the government’s digital services. Sarah joins Software Engineering Daily to explain how and why 18F was formed, and how it plans to improve government from within in the years to come.

                Sarah Allen is a Presidential Innovation Fellow who serves as a developer and product manager for 18F. She is also a co-founder of Bridge Foundry, an organization that helps encourage and empower people who are learning to code.

                Questions
                • What are the differences between building a successful company versus building a successful government organization?
                • Can you combat government’s slowness with the spirit of “delivery as the strategy”?
                • In an ideal world, what is the relationship between politics and software?
                • Were the struggles associated with healthcare.gov important for the genesis of the USDS?
                • How did Bridge Foundry get started?
                • What was it like to build a technology product in 1995?
                • Links
                  • 18F
                  • Presidential Innovation Fellows
                  • Bridge Foundry
                  • HealthCare.gov
                  • Shoes!
                  • Gender and Sex at Gogaruco
                  • Sarah’s personal page
                  • The post Digital Transformation of Government with Sarah Allen appeared first on Software Engineering Daily.

                    1 hr 1 min
                  • WebTorrent with Feross Aboukhadijeh

                    “The BitTorrent DHT is an amazing engineering feat and one of the coolest ideas in computer science, I think, because it works without any central coordination.”

                    WebTorrent is a streaming torrent client for the browser that can be used without any additional plugins, extensions, or installations. It is written entirely in JavaScript, and uses WebRTC to handle peer-to-peer communication. There are some limitations to making BitTorrent work over the web using WebRTC, including the inability for a browser-based WebTorrent client or “web peer” to communicate directly with a torrent client.

                    However, the potential for every browser to contribute to the hosting and streaming of files is unprecedented. Imagine if large content sites like Netflix or YouTube did not have centralized hosting, and instead relied on its users to seed the content to each other using their web clients. This enables not only more efficient networks, but also the ability for each user to contribute to and be part of the content delivery network.

                    Feross Aboukhadijeh is the creator of WebTorrent. Previously he built PeerCDN, a peer-to-peer content delivery network, which was acquired by Yahoo in 2013.

                    Questions
                    • Could you define what a peer-to-peer technology is?
                    • What is the model for the distributed hash table across the network?
                    • What were the problems with the traditional BitTorrent user experience?
                    • How does npm embody the best way to break components into small reusable parts?
                    • What is Browserify and why is it useful for WebTorrent?
                    • How does WebRTC play an important role in enabling WebTorrent?
                    • What are the engineering problems that are still unsolved in WebTorrent, and what are you working on now?
                    • Links
                      • WebTorrent
                      • BitTorrent
                      • Distributed hash table
                      • WebRTC
                      • UDP
                      • Magnet links
                      • Browserify
                      • Electron
                      • Feross’ personal page
                      • The post WebTorrent with Feross Aboukhadijeh appeared first on Software Engineering Daily.

                        57 min
                      • Soylent Engineering with John Coogan

                        “We saw a really great opportunity to build a food company that takes technology seriously from the ground up, and have that be our competitive advantage as we grow and scale.”

                        Soylent is a meal replacement beverage, available in both liquid and powdered forms. Soylent is designed with the goal of meeting all nutritional requirements for an average adult.

                        John Coogan is the CTO of Soylent.

                        Questions
                        • What is Soylent?
                        • Why are Soylent and the culture around it so appealing to engineers?
                        • Are you trying to replace food altogether?
                        • What is the difference between debugging our bodies and debugging our code?
                        • What were the engineering challenges you faced when scaling Soylent?
                        • When you released the beta version, how did you differentiate between novelty orders and true demand?
                        • If you had the data science infrastructure of your dreams, what are the questions you’d ask, and the answers you’d search for?
                        • Links
                          • Soylent
                          • How We Spent $500 on Tech to Ship $2.6M of Soylent
                          • a16z Podcast: The Future of Food
                          • The Black Swan
                          • John on Twitter
                          • The post Soylent Engineering with John Coogan appeared first on Software Engineering Daily.

                            42 min
                          • Language Design with Brian Kernighan

                            “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 several books, including “The Go Programming Language” and “The C Programming Language”, a book more commonly referred to as K&R. Professor Kernighan also worked at Bell Labs alongside Unix creators Ken Thompson and Dennis Ritchie and contributed to the development of Unix.

                            Questions
                            • What are the timeless characteristics that define a successful programming language?
                            • How did people categorize languages 50 years ago?
                            • What would people have been posting on Hacker News in 1965?
                            • Why is Java so popular, and why do you think it’s strongly hyped?
                            • Computers have become more powerful over time – how has this affected language design?
                            • What are your thoughts on JavaScript?
                            • What did you learn while writing a book about Go?
                            • What did you learn about programming and life from working with Dennis Ritchie?
                            • Links
                              • How to succeed in language design without really trying
                              • JavaScript: The Definitive Guide
                              • JavaScript: The Good Parts
                              • The Go Programming Language
                              • Plan 9
                              • The C Programming Language (K&R)
                              • Brian’s professor page
                              • The post Language Design with Brian Kernighan appeared first on Software Engineering Daily.

                                1 hr 8 min
                              • Internet Future with Vint Cerf
                                Vint Cerf is Chief Internet Evangelist at Google.
                                He contributes to global policy development and continued spread of the Internet.

                                This episode is republished from The Quoracast.

                                Questions:

                                • What will the world look like in 5 years?
                                • What are the biggest problems associated with rapid spread and development of the Internet?
                                • Does blockchain technology present any solutions to these problems
                                • Why are cats so interested in blockchain?
                                • Are you worried about artificial intelligence like Stephen Hawking and Elon Musk?
                                • What is the “digital dark age”?
                                • The post Internet Future with Vint Cerf appeared first on Software Engineering Daily.

                                  25 min
                                • Founding Digital Ocean with Moisey Uretsky

                                  “It’s a classic case where you have to be contrarian. It seems like the worst idea in the world to start a cloud hosting business. We didn’t know any better.”

                                  Moisey Uretsky is the cofounder of Digital Ocean, a leading cloud hosting provider based in New York.

                                  “It’s the usual immigrant story. My parents moved to America when we were four or five. We were poor and didn’t have much money so our parents focused on education.”

                                  Moisey told me about his early years, and how he started working on technology with his brother Ben.

                                  “I was bored during my first summer break and my brother had a job at a data center company and I just started reading books about it. Two weeks later he told me to take over as a sysadmin. From there we started our first company.”

                                  Prior to Digital Ocean, Moisey worked on ServerStack, a hosting business similar to Digital Ocean. He also tried to start a hedge fund analytics company, which he had difficulty making successful.

                                  “I did make one sale. I had some sales experience from ServerStack. The first year was just me working and pretending to be four people. But ultimately, product-market fit in that category is extremely complicated. It’s pretty much a nightmare. I don’t envy any financial services startup.”

                                  Moisey has built on the learnings from ServerStack and his financial services company.

                                  “It was tremendously formative. We made every single classic business mistake. This was a decade ago when there wasn’t much of a New York City startup community. We didn’t understand how to attract customers or market properly. We weren’t able to capture the success that was available in the space. It’s easy to start, but it’s hard to scale.”

                                  Digital Ocean was founded in a time when the field was rife with competition. Amazon Web Services, Heroku, Google App Engine, Rackspace, and others had created a market that seemed saturated.

                                  “It’s a classic case where you have to be contrarian. It seems like the worst idea in the world to start a cloud hosting business. We didn’t know any better.”

                                  “What was missing from all the other providers was simplicity. I have a background as a developer and a sysadmin, and yet they were still too complicated for me.”

                                  “With AWS, the learning curve is very steep. It could be a little daunting for people just starting out. There are a lot of things that are no longer relevant that you are forced to think about. These are carryovers from days when hard drives were counted in megabytes not gigabytes.”

                                  Everyone else was putting engineering first, and not product first. “If you get a bunch of engineers together, often times you are going to get an engineering-focused solution. We always went backwards from the product side instead of the engineering side.”

                                  Moisey found himself personally delighted by the product that Digital Ocean was building.

                                  “It took us about six months to build Digital Ocean. When we spun up that first server, I was like ‘this is amazing, all I want to do is build a Rails app and spin up some more servers.’ We knew that if we could deliver that feeling to other customers we were on to something.”

                                  He pointed out similarities and differences between Digital Ocean and Heroku. The two companies both allow easy onboarding for someone looking to deploy an application to a hosted environment. But Digital Ocean offers more options for simple yet advanced configuration–a huge upside for businesses that need to iron out small problems that magnify upon a business’s event of scale.

                                  “When you get past the point of hitting product-market fit, you can experience really fast dramatic growth. At that point, you want to be more hands-on. All of those 1% errors that you could ignore with 100 users, they begin to creep into the picture.”

                                  “With Heroku, it’s a bit more curated, but when it doesn’t fit your product, you might need to go find something else.”

                                  This spectrum between ease of use and configurability parallels the spectrum from small business use cases to large business use cases.  “That’s why AWS is so large.” Large businesses require lots of knobs to turn, so those customers historically have had to turn to Amazon Web Services. Digital Ocean has found a sweet spot along that configurability/ease-of-use spectrum.

                                  Digital Ocean was started as a spinoff project from ServerStack. This strategy leveraged both the hardware and the domain expertise which the Uretskys already had.

                                  “If you look at start-ups that have hardware as well as software–it’s a lot harder. If you have never bled in a data center, you don’t know about the problems you are going to encounter.”

                                  “We ran two companies at the same time. Eventually, Digital Ocean had to acquire Server Stack. Server Stack was like the incubator for Digital Ocean. We learned from the mistakes we made. Without the experience of Server Stack, we would not have been able to build Digital Ocean into what it is today.”

                                  Digital Ocean’s customer service complements its easy-to-use product offerings. I asked if it was difficult to scale the support team.

                                  “The way to scale anything is you get a good product. If you have a good product, you get less support questions. If you hire aggressively, you get less support questions. It’s a thing you put into your mission statement early on. When we didn’t have much funding, there was probably a 50% chance that I would be answering a customer’s support question.”

                                  Moisey told me about his experience growing up with his eventual cofounder Ben.

                                  “We came to America, and we were always passionate about computers, but we were really poor. We got a computer when we were 13 and used AOL and a dial-up modem. My mom was starting to use Visual Basic, and I stole her book and printed out the huge Windows API because I wanted to make my own app. I got about halfway through. It was doing stupid stuff that kids do. Cracking software and whatnot.”

                                  “We always had a strong work ethic. One thing leads to another, I never had a resume, never worked a job. You never see things from the perspective of an employee if you’ve never been one. You always think about how you can push forward.”

                                  “For me and Ben, it was a situation where he had a job and I stopped by to learn stuff and he gave me a job. The company we were working for was going out of business. Working with family is a unique dynamic. One thing that I can say for certain is that whatever the dynamic is with the brothers, that will be the dynamic within the office.”

                                  Locating a tech company in New York has its perks as well as its hazards.

                                  “Ten years ago, it would have been [difficult]. But today, you have a large number of local VCs and Silicon Valley VCs with local offices. The thing is, the best people are always hard to find. The benefit to New York is that there are people that get burnt out on other cities. And there all of these offices for Twitter and Facebook and Google,” and employees are sometimes willing to leave those companies for Digital Ocean.

                                  “Technically speaking, we should be in San Francisco. But we love New York.”

                                  I asked a question about what sort of economic boom we are in, which he answered with subtlety.

                                  “The internet as a whole is still growing. Developers as a whole are growing more as a sector than any other degree. And we’ve been doing this for twelve years. Because we’ve already gone through a downturn, and it didn’t really affect what we were doing, we’re optimistic.”

                                  “Until you can stream HD right to your Oculus Rift, we haven’t reached peak internet usage.  There’s still a lot of growth in the emerging markets. Globalization had a lot of negatives and a lot of positives. We can really be a part of that globalization of information.”

                                  The post Founding Digital Ocean with Moisey Uretsky appeared first on Software Engineering Daily.

                                  1 hr 6 min
                                • Digital Nomadism with Michael Rosenthal

                                  “The main motivation for me was to gain more perspective on the world and my place in it.”

                                  Michael Rosenthal is a traveling programmer who gave up school and full-time job prospects in the U.S. to travel and freelance.

                                  This episode is a Christmas special because Michael is my younger brother, and his journey as a developer and a person has been inspiring to me.

                                  Questions
                                  • When did you start bitcoin mining?
                                  • Could you describe the transition where you decided to go travel?
                                  • How does the remote job discovery process work?
                                  • Have you ever taken a freelance job that you’ve regretted?
                                  • What do you miss about being home in the States?
                                  • Why did you switch from freelancing to consulting?
                                  • Links
                                    • Upwork
                                    • Mango Chomp
                                    • Michael on Twitter
                                    • The post Digital Nomadism with Michael Rosenthal appeared first on Software Engineering Daily.

                                      59 min

                                    About Software Engineering Daily

                                    From the publisher's feed

                                    Technical interviews about software topics.