I’m afraid that my other duties have made it impossible for me to keep doing DTV. This site will remain, but it won’t be updated in the near future.
If you’re a developer who wants a weekly dose of news, information, and tips, then subscribe to my newsletter! Every Monday, I send an article having to do with development, often in Python, and how you can be a more effective software developer.
Sorry to all you fans of DailyTechVideo; I’ve been overwhelmed with work on my new book, Practice Makes Regexp. I’ll soon be back with more videos, and look forward to sharing them with you!
Meanwhile, if you have suggestions for great videos to include, please send them to me at reuven@lerner.co.il.
Angular is one of the most popular front-end frameworks. Angular 2 promises to be even more interesting and useful — but it’s also going to be very different from Angular 1. Now that Angular 2 is in beta, what does it look like? Developers are being encouraged to use TypeScript when developing in Angular 2; how does that affect how the system works? Finally, what sorts of new JavaScript capabilities will Angular expect or demand? This talk by Kara Erickson and Victor Savkin introduces the capabilities of Angular 2, giving us a preview of what the team is creating, and how it can/should be used.
(Note: The actual talk starts at 5:30, after some announcement.)
Functional programming is well known for, among other things, treating functions as data, allowing us to store, create, pass, and return them within a program. This has led to all sorts of interesting techniques, most having to do with holding onto functions until we need to use them. Object-oriented programming languages offer us a similar idea, as the “command pattern” — but where can and should we use it? What problems can be solved elegantly by incorporating the command pattern into our code? In this talk, Reginald Braithwaite introduces the command pattern in a number of different contexts, giving us insight into where and how we can incorporate it into our own work. While examples are in JavaScript, these ideas can be used in any object-oriented language.
It has often been said that JavaScript is the assembly language of the Web. But as JavaScript becomes an increasingly popular target for other languages (in the browser, or on the server) and as virtual machines make it easy, perhaps it’s time for us to think about what constitutes an operating system, and what it means to have a “computer” running a program. Emulation, and virtual machines, make all sorts of new architectures possible. What is the role of the browser vs. the server? What can we expect to see as we move forward, given the ubiquity of JavaScript and VMs? And what can we learn from classic computer architecture and languages as we move forward? In this talk, Scott Hanselman discusses all of these topics.
Back in college, I had to take some introductory courses in electronics and electrical engineering. I was confused by what I was learning — and ever since, electronics have seemed like a cross between magic and a mystery to me. I’m not sure whether it’s good news or bad, but a large number of other software developers seem to feel the same way as I do. But of course, it would be really nice to know how our computers work, and what the basic principles are of the electronics within. In this talk, Dror Helper comes to the rescue, offering a crash course in electronics for people with a software background. He starts from the beginning, describing such concepts as voltage, resistance, and current, and quickly moves onto more advanced topics.
Is your Web application is getting a bit big and bulky on a single server? You might be thinking of moving to a more distributed, microservice-based architecture. And in many cases, that’s a great way to go about things. But microservices aren’t a panacea, having their own issues and pain points. What are the trade-offs associated with a microservice-based architecture? How do you define the dependencies (code and API) between the different services? And how can you avoid a “distributed monolith” — a situation in which you have many microservices that are dependent on one another? In this talk, Ben Christensen describes the different ways to think about such microservice- systems, and how to avoid some of the more common pitfalls.
The civil war currently taking place in Syria has cost many lives, and has created a huge number of refugees. Many of these refugees are now living in a refugee camp at Za’atari, in neighboring Jordan. Under circumstances that range from difficult to grave, is it reasonable to think that young people can get an education, let alone a technical education that’ll enable them to create high-tech devices and applications? In this talk, Karen E. Fisher and Katya Yefimova describe their efforts to do just that — teaching, facilitating, and encouraging these young refugees to create new things, to collaborate with their peers, and to create things that can help themselves and others.
A growing number of organizations are using containers, such as docker, to deploy applications and parts of their infrastructure. How well do contains work with a database such as PostgreSQL? What do we need to know about installing, configuring, and deploying PostgreSQL in this way, and what mistakes should we aim to avoid? In this talk, Jignesh Shah shares his experiences combining PostgreSQL with Docker. He describes the reasons why it’s useful to work in this way, and how we can deploy and then monitor our PostgreSQL instances in a number of ways.
One of the growth areas for Python over the last few years has been in the area of data science: Tools such as Jupyter (aka “IPython Notebook“), along with NumPy and Pandas, have made Python one of the main languages that people use when doing data science. But how does a data scientist use Jupyter? How does a data-science firm use it to promote collaboration and exploration? And where are notebooks note less preferable than traditional Python modules? In this talk, Brian Lange provides a high-level overview of where and how Jupyter notebooks are used in his data-science firm, discussing their relative advantages and disadvantages in consulting and training.