Copy
View this email in your browser

Software Weekly - 11/04/2019

Facebook entrepreneurship, serverless supercomputer, distributed transactions, Friday deploys, Tensorflow enterprise & more
 

Listen


Last week’s most popular episode: Facebook Entrepreneurship with Jeff Rothschild. Jeff discusses the early days of Facebook and his philosophy of entrepreneurship. He helped scale the company’s infrastructure and architect the technical strategy as VP of infrastructure software. 

Old favorite: Facebook Data Infrastructure with Dhruba Borthakur. Dhruba discusses his time at Facebook building data infrastructure. He takes us through the major projects he worked on, including the early Hadoop infrastructure, the refactoring of online user workloads to be more “pull” based than “push” based, and the creation of RocksDB, a storage engine he helped create at Facebook.


You don’t need to be a professional designer to turn flat information into rich visualizations. Logi Analytics has compiled 17 design tips that will transform   your dashboards. Visit logianalytics.com/sedaily to access 17 easy changes that will transform your dashboards.
 

Interesting Picks in Software Engineering and Architecture


My Most Embarrassing Mistakes as a Programmer (so far). You have to read this! Some really great lessons, and it's a fun, easy read. Some excerpts: "I heard years later that the person who inherited my code hated me." "'If people learn from their mistakes, I must have a Master’s degree by now.' I have a PhD."

Deploys: It's Not Actually About Fridays. Why you should deploy on Fridays. It's less about Fridays and more about the mindset and culture. You want to make engineers' lives easier, make your process automated and safe. I agree here and I do think not being able to deploy on Fridays should be considered a smell and not something to strive for. It's okay for you to do it but don't claim it's the best practice. 

Open Sourcing Amundsen: A Data Discovery And Metadata Platform. Amundsen is used for indexing and searching for various data resources (think data sets or tables). You would want to use Amundsen if you are in a big organization if it's hard to discover what BI data is available and what team owns it. Check out the show we did on Amundsen: Lyft Data Discovery with Tao Feng and Mark Grover.

The Serverless Supercomputer. Written by an ex-AWS Lambda general manager, the article explores the world of a serverless supercomputer. What is missing to get there? 1. distributed networking (compute nodes talking to one another) 2. low latency workflow system 3. DRAM style key value stored (fast, transient, and cheap) 4. immutable input and output 5. customization (streaming, partial input/output) 6. execution dataflow (think orchestration system) 7. serverless optimized algorithms. What I find fascinating over all of the above is all a lot of these challenges are similar to those of orchestration GPU computations.

Engineering Esports: The tech that powers the worlds. First of all, great title. The biggest technical challenges are networking, hardware, and broadcasting. Long article with lots of details on the complexity and how to tackle all the engineering and scale challenges. 

Text Editing Hates You Too. Other titles might have been "your computer hates you" and "your code hates you too." The post talks about accidental complexity and how it introduces lots and lots of bugs. 

Open Sourcing Mantis: A Platform For Building Cost-Effective, Realtime, Operations-Focused Applications. Mantis applications (jobs) are deployed on the Mantis platform. By providing stream processing As-a-Service, Mantis allows developers to simply focus on their business logic to build powerful and cost-effective streaming applications.

Modernizing our Android build system: Part II, the execution. Dropbox is adopting Gradle and investigating Bazel for the Android build system, deprecating its own in-house build tool.

XML is almost always misused. Interesting perspective on markup language vs. data format and document vs. data. What I find lacking in this article is any mention of SOAP. Did SOAP misuse XML? Probably not. It's a good thing that XML is open for extension to other things, besides what it was originally created for.

GRIT: a Protocol for Distributed Transactions across Microservices. The approach avoids pessimistic locking during both execution and commit process and avoids waiting for physical commit. They take the optimistic approach and also make the commit process very efficient by leveraging logical commit logs and moving the physical database changes out of the commit decision process with deterministic database technology, which is similar to log play in replication. Are there practical applications for this? Are we still doing transactions across services? This design probably has scalability limitations (my guess somewhere between 300-1000 transactions per second).

A beginner’s guide to database deadlock. Simple but important concepts to understand if you are using a SQL database in production. 

My key takeaways from ServerlessDays Stockholm. Everything should be asynchronous. Serverless is a mindset: you don't need to build everything from scratch. Reuse existing services, use managed services, scale on demand. 

 Cruise is a San Francisco-based company building a fully electric self-   driving car service. There are opportunities for backend engineers, frontend developers, machine learning programmers, and many more positions. At Cruise you will be surrounded by talented, driven engineers-–all while helping make cities safer and cleaner. Apply to work at Cruise, by going to getcruise.com/careers.

What's New in Tech


Facebook alters video to make people invisible to facial recognition. It maps a slightly distorted version on a person’s face in order to make it difficult for facial recognition technology to identify a person. Now watch us train a model that can break the de-identification model. 

Microsoft: Russian hackers are targeting sporting organizations ahead of Tokyo Olympics. Instead of hacking the samples or the labs, just hack the results database. 

Google Cloud launches TensorFlow Enterprise. Great news for the enterprise. Peace of mind knowing your ML infrastructure will scale and be secure. I hope to see some new innovative technology as a result of this soon.

ExtraHop is a cloud-native security company that detects threats across your hybrid infrastructure. At ExtraHop.com/cloud, learn about how ExtraHop delivers cloud-native network detection and response.

Announcements


New SEDaily app for iOS and for Android. It includes all 1000 of our old episodes, as well as related links, greatest hits, and topics. You can comment on episodes and have discussions with other members of the community.

Jaspersoft offers embeddable reports, dashboards, and data visualizations that developers love. Give users intuitive access to data in the ideal place for them to take action—within your application. To check out a sample application with embedded analytics, go to softwareengineeringdaily.com/jaspersoft.com.  



Hi there, I'm Abdallah. I am a software developer myself and love talking news, insights, analysis of software engineering, and bringing you interesting content from across the web.
 
Your support for the show and the newsletter is greatly appreciated.

Thank you,
Abdallah Abu-Ghazaleh (@TheGhazStation)
 
Join the Slack community and discuss your thoughts with fellow listeners.

Newsletter Feedback

Got feedback? Reply to this email and let us know your thoughts.

If you enjoyed reading this newsletter, I hope you will forward it to your friends and coworkers and ask them to subscribe.
 
Copyright © 2019 Software Daily, All rights reserved.


Want to change how you receive these emails?
You can update your preferences or unsubscribe from this list

Email Marketing Powered by Mailchimp