From 0d110594bb729d2f5b7756fcecaeb31cb684fa85 Mon Sep 17 00:00:00 2001
From: z3rOR0ne
The post The Overflow #174: This email could have been a meeting appeared first on Stack Overflow Blog.
+]]> +What’s the difference between software engineering and computer science degrees? stackoverflow.blog
While these two areas of study may seem very similar, they do have some differences.
Are meetings making you less productive? stackoverflow.blog
Developers view about half their meetings negatively. Can we find better ways to use that time?
Going stateless with authorization-as-a-service (Ep. 553) stackoverflow.blog
The home team welcomes Alex Olivier, cofounder and product lead at Cerbos, for a conversation about how to centralize business logic in a microservices environment, the value of stateless applications, and what’s under Cerbos’s hood.
Maximize Cloud Savings with DoiT promotion
AWS and Google Cloud customers are invited to an exclusive program designed to help tackle complex cloud issues. Focus on innovation while we help you save on cloud costs and avoid billing surprises. Learn how to get started.
Is it okay to hard-code table and column names in queries? softwareengineering.stackexchange.com
How often to you change your table and column names but not the structure?
Does the law make exceptions for good samaritans? law.stackexchange.com
For those of us whose legal education comes from the back half of Law and Order.
My employer’s “401(k) contribution” is cash, not an actual retirement account. What are my options? money.stackexchange.com
Go for the old school 401(k) and stuff it in your mattress.
How much louder was a Napoleonic era cannon than a musket? history.stackexchange.com
Loud enough that when Napoleon met his Waterloo, it could be heard over 300km away in London.
Open source is fueling the future of nuclear physics github.com
You don’t really associate “openness” with “nuclear fusion,” but that’s changing!
New on the web: How to detect disabled JavaScript in CSS www.stefanjudis.com
Though very few people disable JavaScript these days, it’s good to be able to detect that. And now, you can do it in CSS!
React, visualized react.gg
This is a great free visual introduction to React that illustrates its fundamental concepts in a beautiful way!
Building webhooks into your application: Guidelines and best practices workos.com
Webhooks are a common way for devs to receive events from your apps, but they can be tougher to implement than you might think.
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #174: This email could have been a meeting appeared first on Stack Overflow Blog.
+]]>The post When setting up monitoring, less data is better (Ep. 563) appeared first on Stack Overflow Blog.
+]]>Computer scientist Jean Yang, founder and CEO of monitoring and observability platform Akita, tells the home team how her drive to improve developer tooling led her from academia to Silicon Valley.
+ + + +Episode notes:
+ + + +Akita is a monitoring and observability platform that watches API traffic live and automatically infers endpoint structure.
+ + + +Jean, who comes from a family of computer scientists, earned a PhD from MIT and taught in the CS department at Carnegie Mellon University before founding Akita.
+ + + +Read Jean’s post on the Stack Overflow blog: Monitoring debt builds up faster than software teams can pay it off.
+ + + +Jean is on LinkedIn and Twitter.
+ + + +Congrats are in order for Stellar Question badge winner legendary_rob for asking Adding a favicon to a static HTML page.
+ + + + +The post When setting up monitoring, less data is better (Ep. 563) appeared first on Stack Overflow Blog.
+]]>The post Ops teams are pets, not cattle (Ep. 562) appeared first on Stack Overflow Blog.
+]]>A common refrain you’ll hear these days is that servers should be scaled out, easy to replace, and interchangeable—cattle, not pets. But for the ops folks who run those servers the opposite is true. You can’t just throw any of them into an incident where they may not know the stack or system and expect everything to work out. Every operator has a set of skills that they’ve built up through research or experience, and teams should value them as such. They’re people, not pets, and certainly not cattle—you can’t just get a new one when you burn out your existing ones.
+ + + +On this episode of the podcast—sponsored by Chronosphere—we talk with Paige Cruz, Senior Developer Advocate at Chronosphere, about how teams can reduce the cognitive load on ops, the best ways to prepare for inevitable failures, and where the worst place to page Paige is.
+ + + +Episode notes:
+ + + +Chronosphere provides an observability platform for ops people, so naturally, the company has an interest in the happiness of those people.
+ + + +If you’re interested in the history of the pets vs. cattle concept , this covers it pretty well.
+ + + +Previously, we spoke with the CEO of Chronosphere about making incidents easier to manage.
+ + + +We’ve covered this topic on the blog before, and two articles came up during our conversation with Paige.
+ + + +You can connect with Paige on Twitter, where she has a pretty apropos handle.
+ + + +Congrats to Stellar Question badge winner Bruno Rocha for asking How can I read large text files line by line, without loading them into memory?, which at least 100 users liked enough to bookmark.
+The post Ops teams are pets, not cattle (Ep. 562) appeared first on Stack Overflow Blog.
+]]>The post We bought a university: how one coding school doubled down on brick and mortar (Ep. 561) appeared first on Stack Overflow Blog.
+]]>Paulo and Guilherme Silveira, brothers and cofounders of edtech platform Alura, join the home team for a conversation about polyglot programming, edtech, and the role of generative AI.
+ + + +Episode notes:
+ + + +Alura is a Portuguese-language edtech platform where users can learn programming, backend and mobile development, data science, design and UX, DevOps, and more.
+ + + +They started small, grew into a bustling online program, then purchased a majority stake in FIAP, a private university in São Paulo, Brazil.
+ + + +Paulo and Stack Overflow Director of Engineering Roberta Arcoverde cohost a popular Portuguese-language podcast about programming, design, startups, and technology.
+ + + +Paulo’s new open-source project is full of career resources for T-shaped developers.
+ + + +Connect with Alura CEO Paulo Silveira on LinkedIn.
+ + + +Connect with Alura Chief Education Officer Guilherme Silveira on LinkedIn.
+ + + +Connect with Roberta Arcoverde on LinkedIn.
+ + + +Today’s Lifeboat badge winner is netblognet for their answer to Get JSON object from URL.
+ + + + +The post We bought a university: how one coding school doubled down on brick and mortar (Ep. 561) appeared first on Stack Overflow Blog.
+]]>The post Introducing Communities on Teams: where domain, practice, and community come together with purpose appeared first on Stack Overflow Blog.
+]]>Communities are shared spaces where users can build, organize, and enable cross functional groups within their organization to collaboratively learn, share, and solve problems focused around similar technologies, domains or interests.
+ + + +Some historians believe the concept of guilds can be traced back as early as 24th century BC Mesopotamia and has been significant in the development of human civilization throughout history, including giving us the first universities. Guilds organized artisans, merchants, and craftsmen specializing in a particular craft, but could also be religious or fraternal guilds organized around specific beliefs and interests. Post-classical guilds utilized the classifications and standards of expertise, beginning as apprentice, advancing to journeyman, then becoming a master craftsman.
+ + + +Though the economic guild system has died out, the concept of guilds in developing and mastering a domain has seen a resurgence. We see organizations like Spotify returning to the guild model because many of the challenges tech organizations face ultimately come down to people—distributed teams, knowledge silos, redundant work, inefficiencies, and need for growth opportunities. Communities of Practice (CoP) can address these issues in effective ways.
+ + + +According to the Scaled Agile Framework, Communities of Practice are organized groups of people with a common interest in a specific technical or business domain, regularly collaborating to share information, improve their skills, and actively work on advancing their knowledge of the domain. In other words, CoPs are the modern day guild for knowledge workers.
+ + + +Stack Overflow has a strong foundation of enabling technical communities both in the global public community and within private organizations. But a lot has changed since we first set out to build a library of programming knowledge. The variety of formats and sheer volume of content out there requires more time and effort to find what you need all while the technologies we use continue to evolve. More people leverage technology in their everyday lives, resulting in an increase in both technology and technology-adjacent roles and growing diversification in tech backgrounds. The result is more people are searching for more content around more technologies than ever before.
+ + + +On the other hand, there’s plenty that remains constant since we began in 2008. How we as humans learn starts with a question—Q&A is still an intrinsic part of the learning model. Additionally:
+ + + +As technology and the people using it change, our needs for learning change too. So we looked at how we can continue to enable our technical communities to develop technology through collective knowledge and identified three main areas where we have an opportunity to make a great impact: enable more domains to emerge, broaden the types of content and ways to practice skills, and expand community roles to provide more ways for people to engage and have a sense of belonging.
+ + + +Our aim is to evolve our platform to empower technical communities to learn, share, and grow together. One big step in that direction is launching Communities on Teams, designed to bring together people and knowledge within a technology organization around a specific domain.
+ + + +The newest feature in the Stack Overflow for Teams Enterprise plan, Communities are self-organizing, bottoms-up groups that help bring colleagues together across projects, interest, and need, narrowing the scope to be more focused around a central theme or domain. While open to all instance members, Communities are especially valuable to those working in the specific domain as content there is aggregated based on the tags chosen for the Community. Users who join these Communities can keep a pulse on activity around their area of interest so they know what’s trending, who’s sharing new knowledge, and where there’s opportunity to contribute or learn.
+ + + +Once enabled by your Stack Overflow for Teams admin, anyone can create or join a Community. Each Community has a unique name, purpose, and set of tags that define it. From within your Community, you can see recent activity and trending content in your Community, ask a question, post an Article, or create a Collection. You can also see other members in your Community and identify practitioners with expertise across multiple related tags or in a project. Communities identify these experts and their contributions through member acknowledgement and highlight activity from these designated subject matter experts.
+ + + +By enabling employees to connect, leverage collective knowledge, and work together to solve problems, Communities can strengthen a sense of belonging, provide focused opportunities to participate, reduce duplicate efforts, and ultimately identify more efficient solutions that drive positive outcomes.
+ + + +
There are many ways organizations can use Communities to build an inclusive, outcome focused culture. Whether or not your organization already leverages communities of practice or guilds, Communities on Teams is a great platform to enable them and help them thrive. Here are some examples of how customers can use Communities:
+ + + +
We believe by combining domain, practice, and community, we will expand long-held notions of what a distributed community can accomplish:
+ + + +We’re excited to see how your organization will learn, share, and grow together with Communities on Teams, both now and as we continue to make more updates. To learn more about the value of Communities of Practice and how to leverage Communities in your organization, join our upcoming webinar.
+The post Introducing Communities on Teams: where domain, practice, and community come together with purpose appeared first on Stack Overflow Blog.
+]]>The post Community is the future of AI appeared first on Stack Overflow Blog.
+]]>Over nearly 15 years, Stack Overflow has built the largest online community for coders to exchange knowledge, a place where anyone with an internet connection can ask or answer questions, free of charge, and learn from their peers. Stack Overflow for Teams, our enterprise SaaS product, is trusted by over 15,000 organizations to serve as their internal knowledge bases. With the recent advent of dramatically improved artificial intelligence, many industries are wondering how technologies like ChatGPT will change their business. For software development, the answer seems more immediate than most. Even before the latest wave of AI, a third of the code being written on popular code repositories was authored by an AI assistant.
+ + + +Today, sophisticated chatbots, built on top of cutting edge large language models (LLM), can write functional code for a website based on nothing more than a photo of a rough sketch drawn on a napkin. They can answer complex queries about how to build apps, help users to debug errors, and translate between different languages and frameworks in minutes. At Stack Overflow, we’ve had to sit down and ask ourselves some hard questions. What role do we have in the software community when users can ask a chatbot for help as easily as they can another person? How can our business adapt so that we continue to empower technologists to learn, share, and grow?
+ + + +It’s worth reflecting on an important property of technological progress. The Jevons Paradox shows us that, as innovation allows us to do more, we settle on a new normal, moving the goal posts for what we expect of people and organizations, then competing to see who can find new ways to pull ahead of the pack. For knowledge work, as the cost of an action diminishes, we often do more of it. Abstracting away repetitive or tedious tasks frees technologists up to make new discoveries or progress innovation.
+ + + +If new AI systems make it possible to create software simply by chatting with a computer, my prediction is that, far from the job of programmer disappearing, we’ll end up with millions of new software developers, as workers from fields like finance, education, and art begin making use of AI-powered tools that were previously inaccessible to them. We are enthusiastic about welcoming this next generation of developers and technologists, providing them with a community and with solutions, just as we have for the last 15 years. We’ve got a dedicated team working on adding GenAI to Stack Overflow and Stack Overflow for Teams and will have some exciting news to share this summer.
+ + + +
I’m not alone in thinking AI might lead to an explosion of new developers. I’ve heard similar sentiments expressed recently by Microsoft founder Bill Gates, by Geoff Hinton, the godfather of the neural network approach that produced today’s AI revolution, and by Stephen Wolfram, a pioneer across computer science and mathematics. Each sees in today’s AI the potential for the loss of certain jobs, yes, but also, if history is a guide, a future in which a great variety of more highly skilled work becomes available to an even larger group of people. Just as tractors made farmers more productive, we believe these new generative AI tools are something all developers will need to use if they want to remain competitive. Given that, we want to help democratize knowledge about these new AI technologies, ensuring that they are accessible to all, so that no developers are left behind.
+ + + +I talk to developers of varying experience levels all of the time, and I’ve been hearing anecdotes of novice programmers building simple web apps with the help of AI. Most of these stories, however, don’t begin and end with an AI prompt. Rather, the AI provides a starting point and some initial momentum, and the human does additional research and learning to finish the job. The AI can debug some errors, but is stymied by others. It can suggest a good backend service, but often can’t solve all the points of friction that arise when integrating different services. And of course, when a problem is the result not of instructions from a machine, but human error, the best answers come from other people who have experienced the same issues.
+ + + +For more experienced programmers, AI will be an amplifier of their existing skill, making them more ambitious in their projects. The result, as Jevons would predict, is that they spend more time with AI, but also more time creating new ideas, researching new topics, and asking new questions that had not occurred to them before. They feel empowered to reach farther beyond their traditional skillset and to push the boundaries in terms of the kind of work they want to take on.
+ + + +We are excited about what we can bring to the fast moving arena of generative AI. One problem with modern LLM systems is that they will provide incorrect answers with the same confidence as correct ones, and will “hallucinate” facts and figures if they feel it fits the pattern of the answer a user seeks. Grounding our responses in the knowledge base of over 50 million asked and answered questions on Stack Overflow (and proprietary knowledge within Stack Overflow for Teams) helps users to understand the provenance of the code they hope to use. We want to help coders stay in the flow state, allowing them to create with the latest tools with the confidence that they will be able to document and understand the provenance, source, and context of the code being generated.
+ + + +Community and reputation will also continue to be core to our efforts. If AI models are powerful because they were trained on open source or publicly available code, we want to craft models that reward the users who contribute and keep the knowledge base we all rely on open and growing, ensuring we remain the top destination for knowledge on new technologies in the future.
+ + + +AI systems are, at their core, built upon the vast wealth of human knowledge and experiences. They learn by training on data – for example open-source code and Stack Overflow Q&A. It is precisely this symbiotic relationship between humans and AI that ensures the ongoing relevance of community-driven platforms like Stack Overflow. Allowing AI models to train on the data developers have created over the years, but not sharing the data and learnings from those models with the public in return, would lead to a tragedy of the commons. It might be in the self-interest of each developer to simply turn to the AI for a quick answer, but unless we all continue contributing knowledge back to a shared, public platform, we risk a world in which knowledge is centralized inside the black box of AI models that require users to pay in order to access their services.
+ + + +
As the AI landscape continues to evolve, the need for communities that can nurture, inform, and challenge these technologies becomes paramount. These platforms will not only offer the necessary guidance to refine AI algorithms and models but also serve as a space for healthy debate and exchange of ideas, fostering the spirit of innovation and pushing the boundaries of what AI can accomplish.
+ + + +Our thesis on community as the center of a safe, productive, and open future for AI also offers some exciting prospects for our business. Stack Overflow for Teams, our enterprise, private version of Stack Overflow, helps to power a community-driven knowledge base inside of 15K+ organizations like Box, Microsoft, and Liberty Mutual. Decades of institutional knowledge, shaped and curated by subject matter experts and experienced teams, allows the employees at these organizations to more easily collaborate, improving productivity and trust.
+ + + +Incorporating generative AI technologies into the organizations using Stack Overflow for Teams will allow us to layer a conversational interface on top of this wealth of information. We believe this could lead to tremendous productivity gains: from new hires being able to onboard more quickly, to speed up developer workflows, as users are able to quickly ask questions and retrieve answers tapping into the company’s history, documentation and Q&A.
+ + + +The example above is just one of many possible applications of GenAI to our Stack Overflow public platform and Stack Overflow for Teams, and they have energized everyone at our company. We’ll be working closely with our customers and community to find the right approach to this burgeoning new field and I’ve tasked a dedicated team to work full time on such GenAI applications. I’ll continue to share updates through channels such as my quarterly CEO blog, but I’ll be back in touch soon to announce something big on this topic. In the meantime, thank you to our community and customers for continuing to help us on our mission to empower the world to develop technology through collective knowledge.
+The post Community is the future of AI appeared first on Stack Overflow Blog.
+]]>The post The Overflow #173: From Smalltalk to smart contracts appeared first on Stack Overflow Blog.
+]]>The people most affected by the tech layoffs stackoverflow.blog
Overall, these layoffs are a body blow to diversity in tech, not just slowing but actually reversing hard-won gains.
“Data-driven” decisions aren’t innovative decisions stackoverflow.blog
If you want to innovate new solutions, you can’t rely on data about existing solutions.
From cryptography to consensus: Q&A with CTO David Schwartz on building blockchain apps stackoverflow.blog
Imagine a world where you own your digital purchases instead of license them.
From Smalltalk to smart contracts, reflecting on four decades of programming (Ep. 551) stackoverflow.blog
We chat with Dean Tribble about his journey from Xerox PARC to blockchain CEO.
Put your best work on display! promotion
Showcase your skills and build an online resume with .ME, the most personal domain name. Check if your FirstNameLastName + .ME combination is available and check out lots of developer-specific tips and resources for building your online presence.
SQL as a means of avoiding “releases” softwareengineering.stackexchange.com
On monkey patches and cowboy coding…
Can you travel around the world by ferries with a car? travel.stackexchange.com
Who’s up for a road trip?
Is RAM wiped before use in another LXC container? security.stackexchange.com
What did the containers say to RAM when overprovisioning? Just so we’re not on the same page…
Do I really need plural grammatical number when my conlang deals with existence and uniqueness? conlang.stackexchange.com
There are many language without formal plural.
Accessibility for designer: where do I start? stephaniewalter.design
This is an amazing collection of accessibility resources for the projects you might be building!
Buying a bicycle using Playwright maciekpalmowski.dev
We’ve all wanted to buy one of those limited-edition items that sell out immediately…here’s how one dev took matters into his own hands.
CSS creator Håkon Wium Lie interview by Evrone evrone.com
This is a fascinating interview with the creator of CSS on his journey into the web.
A guide for building open-source communities blog.vaunt.dev
Open-source communities have been around for years. Here’s a breakdown of how to attract contributors, build infrastructure, and iterate on your own.
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #173: From Smalltalk to smart contracts appeared first on Stack Overflow Blog.
+]]>The post The philosopher who believes in Web Assembly (Ep. 560) appeared first on Stack Overflow Blog.
+]]>For this episode, we talked with Matt Butcher, CEO at Fermyon Technologies, about distributed computing, the long-term promise of WebAssembly, and the HR mix-up that switched his career from lawn care to computer programming.
+ + + +Episode notes:
+ + + +Fermyon offers serverless cloud computing. Spin is their developer tool for building WebAssembly microservices and web applications; check it out on GitHub.
+ + + +Like past podcast guest David Hsu of Retool (and yours truly), Matt earned a degree in the humanities before deciding to prioritize his “side gig” in tech.
+ + + +Follow Fermyon on GitHub. Matt is on LinkedIn.
+ + + +Shoutout to Lifeboat badge winner keineahnung2345 for saving Hamming distance between two strings in Python from the dustbin of time.
+ + + + + + + + +The post The philosopher who believes in Web Assembly (Ep. 560) appeared first on Stack Overflow Blog.
+]]>The post Are meetings making you less productive? appeared first on Stack Overflow Blog.
+]]>At the beginning of the year, Shopify took drastic steps to reduce their meeting burden. They automatically canceled all meetings of three or more people, a total of around 12,000 calendar series and events that would have taken up roughly 322,000 person hours. Chaotic and drastic? Maybe. But as Kaz Nejatian, Shopify’s COO and VP product wrote in the email announcing the change to employees, “We’ve unleashed the ‘chaos monkey’ before and have always come away faster—faster at shipping, at making great decisions, at getting to results and impact. No one joined Shopify to sit in meetings.”
+ + + +Chances are that no matter where you work, you didn’t join that company for the meetings. You wanted to build software. But the meetings became part of that, and the more senior you are, the more meetings you probably get asked to attend.
+ + + +In this article, we’re going to take a look at the productivity impact of meetings, reevaluate why we have meetings at all, and consider ways to make meetings better (or avoid them altogether).
+ + + +Unless we’re actively multitasking during a meeting (which humans do badly), we’re blocked from other parts of our work: writing code, debugging processes, or designing new features. So if we’re asking for our coworkers’ time, that time should be spent productively. Professor Thomas Fritz of the University of Zurich ran several studies about how software developers perceive their own productivity across their activities. Perceptions across all three studies found that developers view slightly more than half of their meetings negatively. For more from Prof. Fritz, check out our recent podcast with him:
+ + + + + + + +Plenty of things about meetings can make attendees feel they’re wasting their time: guest lists that spiral out of control, overwhelmingly negative participants, and meeting participants who stray off-topic. Otter.ai and Stephen G. Rogelberg, Professor of Organizational Science, Management at UNC Charlotte, found that developers in bad meetings report feeling “frustrated” and “annoyed.” Even good meetings can turn bad if run poorly.
+ + + +In that same study, they found that developers see about one-third of all meetings as unnecessary—they want to decline 31% of meetings, but only nix 14%. Worse yet, bad meetings not only affect how developers feel about their jobs, they cost organizations money—an estimated $25,000 per employee per year. You can estimate how much any given meeting costs your company with this calculator. And that’s just the direct costs of the meeting, regardless of how disruptive it is to the rest of a developer’s day.
+ + + +Meetings don’t happen in a vacuum; often they happen back-to-back with other meetings. Microsoft’s Human Factors Lab found that back-to-back meetings cause a great deal of stress and make people worse at meetings.
+ + + +This wasn’t just a subjective perception. They strapped an EEG cap that measured brain waves to 14 volunteers and either set them up with four consecutive meetings or four meetings with a ten minute meditation break in between. They found that back-to-back meetings caused stress to build up and caused attendees to lose focus and engage worse over time. Surprisingly, one of the biggest sources of stress came from the transition between meetings, as participants tried to switch gears without adequate time.
+ + + +These factors combine to drag down the company as a whole. In a study of 20 organizations in manufacturing sectors, Simone Kauffeld of Technische Universität Braunschweig and Nale Lehmann-Willenbrock of the University of Amsterdam found that bad meeting behaviors were associated with lower levels of market share, innovation, and employment stability. A company that doesn’t have meeting discipline may soon find their best employees fleeing to greener pastures as their balance sheets slowly drift into the red.
+ + + +All these downsides to meetings may make you wonder why we have meetings at all.
+ + + +Obviously, nobody schedules a meeting to torture their coworkers. Meetings are the standard tool for collaboration in companies, ways to find consensus and make a decision, share knowledge, or brainstorm solutions—essentially, they are pop-up communities of practice. Get everyone in a room and talk it out.
+ + + +The Harvard Business Review quotes an unnamed pharmaceutical executive who sums up the pro-meeting bias that many people in leadership positions hold: “Our abundance of meetings at our company is the cultural tax we pay for the inclusive learning environment that we want to foster…and I’m OK with that. If the alternative to more meetings is more autocratic decision-making, less input from all levels throughout the organization, and fewer opportunities to ensure alignment and communication by personal interaction, then give me more meetings any time!”
+ + + +In fact, these are all things that I’d wager every one of us wants from a job. We may lionize the enlightened dictator CEOs of the past, but those who attract praise for their decisive style are a perfect example of survivorship bias. Those successful autocratic leaders still need to inspire and motivate their workforce to do the work behind their decisions. If you’ve ever worked for a determined and bull-headed leader who gave orders instead of direction, then you know how painful it is to work in a culture without collaboration.
+ + + +Many people see reluctance to attend meetings or outright rejection of a meeting as an insult. They hold the attitude of our mystery pharma exec: by rejecting the meeting, you are rejecting an opportunity to collaborate. For one person, maybe that meeting would have been better as an email—you want something done, so send me the requirements/brief so I can do the thing. But another person may see the meeting as a way to feel out an idea, to get a better solution by working with an expert—you.
+ + + +Those meetings that come during points in the software development lifecycle when collaboration is most important—planning, designing, and setting scope—end up being the ones that feel the least disruptive. At these moments, meetings aren’t taking you away from other work; they are the work. Without all stakeholders coming together and determining what needs to be done, engineering orgs would be coding solutions blind.
+ + + +But let’s put some big asterisks on “all stakeholders” and “what needs to be done.” The right attendees can make a meeting feel productive for everyone. “I have heard in our studies that there are often meetings that have a lot of participants yet require only a few,” said Professor Fritz. “In my opinion, the most important part of a meeting is to take the time and reflect on who is really necessary for a meeting and even examine whether or not I should participate, and provide an environment in which it is OK to make that decision yourself.” Everyone at the meeting should have a sense of what to do next: Only 56% of participants leave meetings knowing what actions they need to take.
+ + + +If you need to call a meeting, the research suggests that you need to be a good steward of the meeting, same as you would any other project. More than half of SurveyMonkey participants say two things would make meetings better: a clear agenda and a short meeting time. All participants can improve meetings by being direct, clear, and communicating in a way that leads to a decision. While we all have different communication styles, understanding which ones work best for video calls can make those better, too.
+ + + +When meetings happen can also make a huge difference in whether people see them as valuable or not. One of the big changes that came with Shopify’s meeting-ageddon was that Wednesdays became meeting-free and Thursday had a block allocated for meetings of 50+ people. In a statement, Nejatian said, “Uninterrupted time is the most precious resource of a craftsperson, and we are giving our people a no judgment zone to subtract, reject meetings, and focus on what is most valuable.”
+ + + +As the Human Factors Lab research above showed, breaks between meetings are absolutely necessary. But they also found that days without meetings improve overall collaboration, which is the whole reason we have meetings in the first place. And Professor Fritz and his students found that self-reported productivity declined if a developer had more than two meetings in a day.
+ + + +All this research is a great excuse to have fewer meetings. Meetings will still occasionally be necessary, but limiting them improves developers’ lives. Dropbox uses a framework to identify when something needs a meeting that they call the 3 Ds: decisions, debates, and discussion. These are the business actions that need people to collaborate in order to get them done. Everything else can be served in other ways.
+ + + +It’s worth thinking about how we can use other tools to take the place of those meetings we call reflexively. Status check-ins like the standup meeting have traditionally been served by actual meetings where everyone reports the status of their projects one at a time. But if companies genuinely want to embrace remote options (and preferably, asynchronous working), there are plenty of tools that will let you do that without turning on your camera. Better yet, there are tools that can automate status updates for you.
+ + + +Especially for companies with remote options, finding ways to replace the visibility of office life can make a lot of the pushes for video meetings moot. Working in public as much as possible can help share information across teams and give everyone access to the company’s domain experts. Greater transparency reduces the need for meetings, which can build trust and improve overall morale. When we spoke with the folks at 84.51° about how they use Stack Overflow for Teams, Michael Carrico, director of data science, told us, “It’s a way to help spread institutional knowledge through that entry point person and make connections. Otherwise it would have been seen as more intrusive to directly ping or email somebody.”
+ + + +Meetings, especially post-pandemic as more people have gone remote, have become the de facto way we collaborate, and it’s making us all more stressed, less productive, and worse at actually collaborating.
+ + + +There is hope, but it takes thought, care, and the right tools. We have meetings for genuinely good reasons, but they take a toll on us and our organizations. You don’t have to nuke the calendars from orbit, but finding alternative ways to collaborate will win out in the end. And if you’re interested in improving our overall understanding of meetings, providing the data we need to change company cultures for the better, well Professor Fritz would like to speak to you.
+The post Are meetings making you less productive? appeared first on Stack Overflow Blog.
+]]>The post Going stateless with authorization-as-a-service (Ep. 559) appeared first on Stack Overflow Blog.
+]]>The home team welcomes Alex Olivier, cofounder and product lead at Cerbos, for a conversation about how to centralize business logic in a microservices environment, the value of stateless applications, and what’s under Cerbos’s hood.
+ + + +Episode notes:
+ + + +Cerbos is an open-source, scalable authorization-as-a-service that aims to make implementing roles and permissions a cinch. Explore their docs or see how their customers are using Cerbos.
+ + + +Stateless applications like Cerbos don’t retain data from previous activities, giving devs predictable plug-and-play functionality across cloud, hybrid, on-prem, and edge instances.
+ + + +Connect with Alex on LinkedIn and Twitter.
+ + + +Shoutout to Lifeboat badge winner Hoopje for rescuing Print in bold on a terminal from the dustbin of history.
+ + + + +The post Going stateless with authorization-as-a-service (Ep. 559) appeared first on Stack Overflow Blog.
+]]>The post What’s the difference between software engineering and computer science degrees? appeared first on Stack Overflow Blog.
+]]>Of course, plenty of developers do have college degrees in relevant fields. If you’re looking at colleges in the hopes of landing a coding job, you may have to decide: Computer science or software engineering? Both are great fields to study for a career in technology, so what’s the difference?
+ + + +A formal education in either subject will contain a large amount of overlap, particularly in the first half. Both fields require a solid understanding of math, logic, and basic computer programming skills and concepts. After this, the two diverge significantly.
+ + + +This article will discuss the subjects that each of these majors will cover, where they overlap, and which you might want to pick depending on where you’d like your career to go.
+ + + +Computer science is the study of algorithms, information, and automation. This is a domain separate from programming; computer science builds off of the theory of computation, which has deep roots in logic, mathematics, and philosophy from hundreds of years before computers existed. In fact, the first computer science departments grew out of mathematics. The founder of the first computer science department, Purdue University professor Samuel D. Conte had a PhD in mathematics.
+ + + +You can get a sense of what a university computer science degree will teach you by the questions you should be able to answer in the curriculum. What is the most efficient way to sort a list of random numbers? How can we transmit information between two people privately and how do we mathematically prove it is secure? Is there an algorithm that will sometimes return an answer, but other times continue endlessly? Much like how material science seeks to understand the fundamental properties of the things that civil engineering uses to build a bridge, computer science explores how we can organize and compute information as the foundation to writing software.
+ + + +Take a look at our Computer Science Stack Exchange to get a sense of what sort of questions the field covers. Where the questions on StackOverflow.com cover the ins and outs of using programming languages and tools that build software, the computer science site is almost entirely about algorithms.
+ + + +However, knowing how to calculate things doesn’t mean you can build the operating systems and computer programs that have become ubiquitous in modern life. Software engineering is the study of how to design, build, test, and maintain software. How do you coordinate thousands of programmers to work together to build a new version of the operating system on your phone and make sure that millions of people can install the update successfully? How does a social media website organize its code so that people can use the same program in dozens of different languages? Software engineers need to understand the algorithms they use to build a product, but they focus their attention on designing and building a working product for thousands or millions of people.
+ + + +In fact software engineering is less about the actual code that gets written and more about the processes one goes through to write the code. Ensuring that code is properly tested, deploying code changes to production are reliable and automated, and teams are working together with a common set of standards and practices are paramount to running a successful software project. Here at Stack Overflow, we have an Architecture Guild that regularly meets so that we can come up with standardized practices for all of engineering that ensure that our teams are working together as best as possible. As Yogi Berra once said, “In theory, there is no difference between theory and practice. In practice, there is.” Software engineering is about ensuring that coding practices get as close to theory as practically possible.
+ + + +However, there is a specific difference between these degrees in certain countries like Canada (and technically in many other places). Canada has very strict laws regulating who can call themselves an engineer: to do so, you must be licensed by the local engineering board where the title will be used, similar to how there are rules around calling yourself a medical doctor or a lawyer in many countries. While this requirement initially came about because of a bridge collapse, it applies to anyone who calls themself an engineer, including software engineers. If you want to say you are a software engineer (or anything else with “engineer” in the title) in Canada, you need to be properly certified; otherwise you risk being fined.
+ + + +Again, to see what the field discusses, check out the Software Engineering Stack Exchange. You’ll see a lot of questions about things like software design, bug tracking, and deploying code.
+ + + +Computer science and software engineering alone aren’t enough to build a software product. Computer engineering works to design the CPUs, GPUs, and data storage devices that enable our digital worlds and none of those devices would even turn on without electrical engineering. Mathematics builds the theory and understanding of numbers that underpin the foundation of cryptography and statistics builds the tools to process and understand the information we gather. Newer fields like data science are starting to get their own degrees as artificial intelligence and advanced statistical modeling blurs the line between math, statistics, and computer science. Many other fields in science and engineering use a combination of computer science, software engineering, computer engineering, and mathematics to design planes, develop vaccines, and create animations for TV and film. In fact, many of the best programmers I know have degrees in mechanical engineering or bioinformatics and use their skills to develop robotic systems or medical drug treatments. Even medical degrees like neuroscience and audiology are now requiring programming knowledge so clinicians can compare brain images or sound recordings in scientific programming languages like R or MATLAB.
+ + + +Put together, computer science research creates the building blocks that software engineering uses to design and build a working computer program. Here at Stack Overflow, software engineering practices have helped us bring together a community that serves around 500 million pages a month. Our team uses these practices to coordinate over 200 programmers to put together the website you see today. What most people might not know is that this website runs on just five servers together small enough to fit in your living room. A solid understanding of computer science principles allowed our team to efficiently store and compute all the data we keep to help people get answers to their questions. As we work to move our company fully into the cloud, we rely on software engineering principles to allow us to continue to smoothly run all our websites while we redesign our software architecture and move our code from physical servers to cloud services.
+ + + +There is no right path for how to become a developer, so keep asking questions to help you find the best path for you!
+The post What’s the difference between software engineering and computer science degrees? appeared first on Stack Overflow Blog.
+]]>The post The Overflow #172: The path to async work appeared first on Stack Overflow Blog.
+]]>Building a collaborative asynchronous work environment stackoverflow.blog
Fully embracing a remote workplace means letting everyone work when they want to work.
From Web2 to Web3: How developers can upskill and build with blockchain stackoverflow.blog
Why web3 is here to stay and how developers can build killer dApps.
The next gen web browser has no tabs, only spaces (Ep. 549) stackoverflow.blog
Ben and Cassidy sit down with The Browser Company to talk about reimagining the web browser—and the way we use the internet.
Put your best work on display! promotion
Showcase your skills and build an online resume with .ME, the most personal domain name. Check if your FirstNameLastName + .ME combination is available and check out lots of developer-specific tips and resources for building your online presence.
What is this famous example of the absurdity of English spelling? english.stackexchange.com
Further proof that English is three languages in a trench coat.
Gravity assist as energy source sustainability.stackexchange.com
What goes up must be able to charge your phone.
Told it’s “my responsibility” to find coverage for shifts scheduled during previously-approved vacation time workplace.stackexchange.com
In fact, it is your manager’s responsibility to find coverage for shifts during approved PTO.
Liability for releasing AI into the “wild”? law.stackexchange.com
No matter how smart it is, you’re still liable for malware you create. Just ask Miles Dyson.
Bicycle – Bartosz Ciechanowski ciechanow.ski
We take for granted how bicycles “just work” when we ride them…and this is a great reminder of the cool physics behind them!
The ultimate guide to image optimisation calibreapp.com
When you start to think about web performance, most of the time, optimizing your images comes first and foremost!
Scientists created a new recyclable plastic not made from crude oil www.sciencealert.com
There’s a new plastic in town. Maybe this could help improve recycling!
Dark patterns in UX design—Which ones are the most deceptive? www.uxpin.com
As you build, you’ll want to stay away from the patterns that trick your users.
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #172: The path to async work appeared first on Stack Overflow Blog.
+]]>The post Building an API is half the battle (Ep. 558) appeared first on Stack Overflow Blog.
+]]>Marco Palladino, CTO and cofounder of Kong, joins Ryan to talk about the evolution of API protocols over time and why building the API is only half the battle.
+ + + +Episode notes:
+ + + +If you prefer, you can read this as a Q&A article or watch the video.
+ + + +Kong is a cloud-native API platform. The first iteration of an API marketplace Marco and his colleagues built was Mashape.
+ + + +Developments like GraphQL and gRPC have become critical as the number of APIs increases over time.
+ + + +Find Marco on LinkedIn and Twitter.
+ + + + +The post Building an API is half the battle (Ep. 558) appeared first on Stack Overflow Blog.
+]]>The post From cryptography to consensus: Q&A with CTO David Schwartz on building real-world blockchain apps (Ep. 557) appeared first on Stack Overflow Blog.
+]]>Right now, plenty of people are building businesses on social media platforms, on streaming platforms, and on market platforms that they don’t control. That platform can make the rules in any way they want and remove access at any time. That means founders are potentially one step away from losing their livelihood. The same goes for consumers buying from these platforms: if you lose access to your account, there goes all your purchases. As it turns out, you were licensing everything, not buying it.
+ + + +On this sponsored episode of the podcast, we talk with Ripple CTO David Schwartz about the promise that decentralized trust and distributed consensus has for software development—and for more transparency in ownership.
+ + + +Episode notes:
+ + + +Cross-border payments, while they might not be the sexiest app, are one of the best product-market fits for blockchains.
+ + + +Learn more about Ripple at their home page.
+ + + +Check out the documentation to learn more about building on the XRP Ledger.
+ + + +Congrats to Lifeboat badge winner, asmeurer, for their answer to What does `S` signify in SymPy?
+ + + + +The post From cryptography to consensus: Q&A with CTO David Schwartz on building real-world blockchain apps (Ep. 557) appeared first on Stack Overflow Blog.
+]]>The post From Smalltalk to smart contracts, reflecting on 50 years of programming (Ep. 556) appeared first on Stack Overflow Blog.
+]]>Dean Tribble, CEO of Agoric, joins Ben and Ryan to talk about his journey from working on early programming languages at Xerox PARC to leading a company developing an open-source blockchain.
+ + + +Smart contracts aren’t actually new. Computer scientist, legal scholar, and cryptographer Nick Szabo coined the term in 1994 (possibly earlier, depending on who you ask).
+ + + +Old problems seem to keep coming back. Bret Victor gave a talk in 2013 called “The Future of Programming,” where he talked about problems from 1973 that were still relevant.
+ + + +To learn more about the Agoric blockchain, check out their homepage.
+ + + +If you’d rather shape how the blockchain itself operates, much of Agoric’s code is open source.
+ + + +Connect with Dean on Twitter or Telegram
+ + + + +The post From Smalltalk to smart contracts, reflecting on 50 years of programming (Ep. 556) appeared first on Stack Overflow Blog.
+]]>The post “Data driven” decisions aren’t innovative decisions appeared first on Stack Overflow Blog.
+]]>The modern tech product company wants to be data driven—and they’ll do whatever they can to get their hands on that data.
+ + + +Compare that to the approach that produced the unicorn companies of the late nineties: your eBays and your Amazons, for example. The archetypical founding story? Some guy—admittedly it’s usually some wealthy, well-connected guy, but some guy nonetheless—thought up a thing that he wanted for himself. It turned out that the world wanted it, too, to the tune of billions of dollars.
+ + + +Why aren’t the unicorn companies of 2023 talking about how some dude in his garage wanted a thing for himself in 2013?
+ + + +The answer derives from who built the internet of today, and who they built it for.
+ + + +An innovative product breaks the market for existing solutions. And this is important: it usually doesn’t just serve a need better than other solutions serve it. Instead, it serves a need that other solutions don’t serve at all.
+ + + +Let’s look at some examples.
+ + + +eBay used reputational scores to connect buyers and sellers who did not know each other and have stuff actually get paid for and delivered—across time and space! Until the early internet, sales had to be colocated, and even after the internet they carried the risk of some faceless website stealing your money and never sending the thing you ordered. At the time, no mainstream solution did this.
+ + + +Amazon added a logistical system that made ordering things over the internet not only reliable, but also relatively fast. No more waiting three weeks for John in Ohio to ship your CrazyTown album sticker via snail mail. To this day, for better or worse, Amazon offers a more streamlined, reliable online purchasing infrastructure for many products than even the sites of the shops that create the things they’re selling.
+ + + +When Apple released the iPhone in 2007, no other phone offered the opportunity for different apps to have different input interfaces. Its introduction more or less broke the market for existing phones.
+ + + +In the days of the early internet, unserved needs were easy to find: until then, commerce had to happen either in person or via snail mail and phonecalls. Quick, self-service, asynchronous options simply did not exist. The web made it possible for them to exist. It more or less dumped a whole vat of krill into the waters of commercial demand for companies to snap up without having to be that creative.
+ + + +Now, those krill have largely been eaten. The easy wins have been won. Online commerce is a saturated business. The commercial web’s early garage founders built the things they wanted, and now the things that that demographic wants have been built.
+ + + +Focus groups, surveys, segmented customer data, segmented competitor customer data, smartphone data—today’s product and marketing teams lean heavily on these resources to find the tiniest capillary opportunities for monetization within that demographic.
+ + + +Innovation means, pragmatically, serving a heretofore unserved need. Those are hard to find among the people that the internet was built for. The problem lies in the fact that the product and marketing teams’ sources of data—people who do focus groups and fill out surveys from their smartphones, people who already use the product or a competitor’s product or a variety of smartphone apps—come from the people that the internet was built for. These people have few unserved needs online.
+ + + +So where can we find the unserved needs—the opportunities to innovate? It will sound too basic to be true when I say it: we have to talk to folks that don’t enjoy an internet built for them. We can’t find them among folks already well-represented in boardrooms, product teams, and pools of active customers. Instead, visionary products derive directly from centering people at the margins of modern technology.
+ + + +That doesn’t sound like it would be a profitable strategy, does it? Our instinct on this tends to get hindered by two flawed assumptions.
+ + + +Flawed Assumption #1: “Marginalized folks constitute a minority of our potential customers.”
+ + + +This is just flatly incorrect in a lot of cases. Take a look at the difference in uptake by race for online money transfer companies CashApp and Venmo. These two companies do not differ in size by orders of magnitude. A Venmo employee might say of the company’s numbers “That’s just who wants/needs a money transfer app.” And they’d be, candidly, wrong.
Flawed Assumption #2: “Pursuing solutions in underserved populations will cost us demand from existing customers or larger demographics.”
+ + + +This would be true if the needs of the two groups were mutually exclusive, but they’re often complementary. My favorite example of this is the same 2007 iPhone introduction I mentioned above. The star feature of that phone—the multi-touch capacitative screen that facilitates different interfaces for different apps—was not an Apple invention. Apple got that screen by acquiring FingerWorks, a small company founded by John Elias and Wayne Westerman to distribute a computer input device Westerman had designed to help his mother, who lost much of her fine motor function, to continue to do the activities she wanted to do on her computer. Indeed, you’d be floored by the number of your favorite technological features that started as accessibility features for people with disabilities.
+ + + +Now, reams have been written about how to get marginalized people into the room on product decisions. Tech companies individually tend to experience intermittent hiccups of trying really hard on that, but as an industry as a whole, the situation ain’t great. No number of DEI trainings seems to manage to keep a diverse team. And I maintain that the reason for this is that, as not-racist, not-sexist, or not-ableist as individuals want to be, we run into two things:
+ + + +Teams can facilitate an inclusive environment and increase their capacity to sniff out unserved needs by explicitly practicing that complement of skills in their work. Some of these get touched on in DEI trainings, but they form the foundation of creating a team where everyone experiences positive changes in their opportunity to contribute. I have written before about building an employee evaluation rubric for what I see as the critical five:
+ + + +This is the skill of giving folks in a meeting the opportunity to listen by protecting their opportunities to speak. Without this, teams run into all kinds of icky demographic patterns governing who gets to talk in meetings, and it’s often not the people with the most thought-out ideas. That’s why moderation is such a critical skill—especially for leadership of an innovative team. You need people’s ideas, and that requires the skill of uncovering them in groups.
+ + + +There’s also skill associated with uncovering ideas individually, and identifying who to ask for those ideas. It includes thinking specifically about who will be affected by a decision, and seeking them out for input. It also includes identifying which perspectives would disagree with those making the decision, and explicitly soliciting those objections to avoid running into obstacles later on that could have been predicted.
+ + + +This often feels like a small skill, but it has a huge impact. It’s common in tech for folks to misattribute ideas, forget where they heard them, or fail to recall who taught them something they know. In the aggregate, this makes folks less likely to share their ideas out of concern that they’ll lose credit for them. It’s especially true among underrepresented groups, but it can happen to anyone. A team that cares about attribution, and practices making it regularly, facilitates earlier and more open idea sharing.
+ + + +It’s easy to accidentally condescend to others in the workplace and give the impression that we think other people are less capable than we are. We want to share what we know, and sometimes the unintentional result of that is that we lecture someone who knows more than we do. This makes folks feel like we don’t respect their valuable expertise. And if we don’t respect it, why should they share it?
+ + + +This is another one that feels small but makes an outsize impact. It’s also tricky to broach a topic when we don’t know the level of expertise of others in the conversation. But we can learn to ask questions about that. We can also learn to share knowledge with explicit consent to be stopped if an interlocutor already knows, or if we assume too much knowledge and they have questions.
+ + + +We’re a conflict-avoidant culture: we’ll go to great lengths to skirt disagreement. But disagreement often signals and precedes conversations that result in more complete solutions that better serve unserved needs. Developing a more positive attitude about disagreement requires tools for navigating it more comfortably and with more grace for each other. And that, like the other four items discussed above, is a skill that can be taught, learned, and practiced.
+ + + +Those skills all have a lot of nuance in them, and I have not explained exactly where to get it. I’m working on an online, self-paced workshop with exercises in it to help technologists like you create and lead teams that can, in fact, innovate. You can pre-order that course right here (and, if you want proof of my teaching chops, this course on tech debt is already up and available).
+ + + +But the takeaway here revolves around where innovation comes from. We can employ skills—individual, interpersonal skills—to create the kind of environment that makes innovation possible, even in a tech sector that often looks bleakly saturated. There’s hope for us, hope for our teams, and hope for our industry if we can learn to execute on our curiosity about the unmet needs we can build for.
+The post “Data driven” decisions aren’t innovative decisions appeared first on Stack Overflow Blog.
+]]>The post The people most affected by the tech layoffs appeared first on Stack Overflow Blog.
+]]>Of those who lost their jobs in the most recent round of layoffs, 45% were women—which doesn’t sound bad until you remember that less than a third of tech industry roles and less than a quarter of tech leadership roles are filled by women. Other underrepresented groups, especially Black tech workers, have also been impacted at outsize rates. And the layoffs have revealed cracks in an immigration system that hasn’t been overhauled since LISTSERV was born.
+ + + +Women and people of color aren’t being laid off at higher rates because we were dead-weight DEI hires in the first place. According to Sarah Kaplan, director of the University of Toronto’s Institute for Gender and the Economy, it’s because “the roles that historically underrepresented groups are hired into tend to be seen as the most expendable.”.
+ + + +This includes less technical roles and ones perceived as less prestigious or farther from the product—like field and customer support, human resources, communications, and marketing. “Overall, definitely nontechnical roles are more affected, women are more affected,” Reyhan Ayas, a senior economist at Revelio Labs, told The Washington Post.
+ + + +The rise of remote work during the pandemic allowed more women and people of color to enter the tech workforce because remote work made barriers like childcare and unaffordable housing within commuting distance of the office easier to overcome. At Meta, for instance, US hires for remote roles in 2022 were more likely to be people of color, while global hires were more likely to be women. But when companies make cuts, remote workers may be more likely to lose their jobs—they certainly feel more anxious about it, according to Harvard Business Review. Since companies often follow the “last in, first out” rule when determining which jobs to cut, recently hired remote workers—more likely to be women and people of color—are often the first to be laid off.
+ + + +The reasons why roles seen as less technical and/or less prestigious tend to be stacked with representatives of underrepresented groups are manifold and complex, including structural barriers like historical access to education and economic resources, geographic location, social conditioning in school, and cultural and familial expectations. But the result is that industry-wide layoffs fall disproportionately on people who are already underrepresented in tech.
+ + + +For foreign-born tech employees in the US on H1-B visas, a layoff isn’t just a job loss: it can uproot their entire lives, and their families’ lives. The H-1B visa program allows people with specialized skills who are sponsored by an employer to come to the US to live and work. H1-B visa holders can stay in the US for no longer than six years unless an employer sponsors their permanent residency (their green card).
+ + + +The number of H-1B visas awarded is capped at 85,000, and big tech companies account for a hefty percentage of these, with nearly 70% of the visas going to people in “computer-related” roles. Because only a limited number of employment-based residency applications can be granted every year, people can wait decades for a green card, tying H1-B visa holders to the same employer for years and making them especially vulnerable in the event of layoffs.
+ + + +When someone on an H1-B visa is laid off, they have 60 days to secure sponsorship with another employer or leave the country. “These visa holders have built lives here for years, they have a home, and children, and personal and professional networks that extend for years,” Linda Moore, president and CEO of TechNet, told WIRED. When the companies responsible for sponsoring most H1-B visas are the same companies laying off workers, the system fails the workers (and the companies) it exists to serve.
+ + + +Part of the problem is we’re using a legacy system from the 80s. The H1-B system hasn’t changed substantially in more than 35 years, writes Anna Kramer for WIRED, but in those decades, the US has become a dominant presence in science and technology, a rise fueled in large part by foreign-born talent. The immigration system hasn’t evolved along with the reality of the industry, and that creates problems—not just for individuals, but for companies and the industry as a whole.
+ + + +“Tech companies have invested decades and millions of dollars into lobbying for kinder rules and an increase in the number of visas available, and in sponsoring hundreds of thousands of workers,” writes Elliott. “Yet the process remains unchanged, and layoffs mean some skilled workers that companies may want to hire from competitors either now or in future will instead leave the country.” And that’s our loss.
+ + + +The erosion of diversity in tech is a problem for everyone, not just individual members of underrepresented groups. “If you don’t have a diverse workforce, you’re going to get technologies that exacerbate inequalities in our society,” Kaplan told Fast Company, referring to technologies like AI-powered facial recognition or credit score assessment. “We should care that the tech sector is not diverse, because it’s creating technologies that shape our lives.”
+The post The people most affected by the tech layoffs appeared first on Stack Overflow Blog.
+]]>The post The Overflow #171: The tech toolbox appeared first on Stack Overflow Blog.
+]]>What’s different about these layoffs stackoverflow.blog
As the discouraging news continues, we revisit how our core community of developers has been experiencing the layoffs—and explore what sets this economic situation apart from previous dips and busts.
Who builds it and who runs it? SRE team topologies stackoverflow.blog
Ad-hoc SRE principles can get you on the right track, but if you want to sustain it long-term, you’ll need organizational structure.
Your tech toolbox: The middle ground between tech chaos and rigidity stackoverflow.blog
Do you solve new problems the same way because it’s already done? Or do you go with a new approach that offers more benefits?
Moving up a level of abstraction with serverless on MongoDB Atlas and AWS stackoverflow.blog
Storage isn’t where you’ll run up costs; spending engineer time on sorting out low-level issues is.
What our engineers learned building Stack Overflow (Ep. 547) stackoverflow.blog
Charles “Cobih” Obih and Radek Markiewicz of the Stack Overflow platform team join Ben and Ryan to talk about changes to the inbox and what it’s like to build Stack Overflow’s public platform.
Claim your FREE .app or .dev domain from Porkbun promotion
Porkbun is a refreshingly different domain name registrar offering an oddly satisfying experience. If you’re a developer or designer, get your FREE .app and .dev. domain. This offer is an ideal home for your next project. Claim your free domain today!
How fast does a pineapple need to fly to kill? worldbuilding.stackexchange.com
“I came here to chew bubblegum and shoot pineapples and I’m all out of bubblegum.”
Is it logical to seek revenge? philosophy.stackexchange.com
Imagine if a Vulcan and a Klingon had a baby, then asked a question on Stack Exchange.
How to protect the code from being ‘rephrased’ by AI to avoid license limitations? opensource.stackexchange.com
Until the courts say otherwise, machine translation of a copyrighted work is still translation.
Computer is frying all USB devices that are connected superuser.com
Officer! Arrest that computer! It’s a murderer!
Lessons from linguistics: i18n best practices for front-end developers shopify.engineering
Internationalization matters, and linguistics can help you do it right.
10 years of Electron
www.electronjs.org
Electron celebrated its 10th anniversary this month! Have you built anything with it?
Command-line fu www.commandlinefu.com
Sometimes you just come back over and over again to the same handy command-line tools. Here’s an awesome resource of thousands of them!
This mirror reverses how light travels in time spectrum.ieee.org
Physics is dang cool, and this project reflects that (get it?).
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #171: The tech toolbox appeared first on Stack Overflow Blog.
+]]>The post How to keep the servers running when your Mastodon goes viral (Ep. 555) appeared first on Stack Overflow Blog.
+]]>A Principal Engineer at GitHub, Kris is president of the Nivenly Foundation and an admin at Hachyderm, an instance of the decentralized social network powered by Mastodon.
+ + + +The ongoing changes at Twitter have fueled interest in alternative, decentralized platforms like Mastodon and Discord.
+ + + +Read Leaving the Basement, Kris’s post about scaling and migrating Hachyderm out of her basement.
+ + + +Watch Kris’s conversation with DigitalOcean Chief Product Officer Gabe Monroy about building decentralized IT platforms.
+ + + +Find Kris on Twitter, GitHub, Twitch, or YouTube.
+ + + +Congrats to Lifeboat badge winner metakeule for answering: How can I get an error message in a string in Go?
+ + + + +The post How to keep the servers running when your Mastodon goes viral (Ep. 555) appeared first on Stack Overflow Blog.
+]]>The post From Web2 to Web3: How developers can upskill and build with blockchain appeared first on Stack Overflow Blog.
+]]>Coming off the heels of 2022, it may be difficult to assess where web3 technologies stand in 2023. Bitcoin rose to $47,000 and fell to $16,000. NFT trading volumes peaked at $17B in January 2022 and a year later collapsed to a mere $143M. “Blockchain” and “digital currencies” became everyday terms in the mainstream media. We saw the collapse of FTX and all its cascading consequences.
+ + + +It was a tumultuous year in the world of web3—full of speculation, crashes, and scandals. But does this mean that web3 is dead and the underlying technologies made obsolete? Hardly.
+ + + +Though mainstream enthusiasm for NFTs and cryptocurrency has ebbed and flowed, the community is still very much alive and actively invested in not just the technology, but in ensuring the promises of a decentralized internet are realized. The world at large is frustrated with the data collection practices of the tech industry heavyweights. The global reach of eCommerce needs trustworthy payment systems that can operate worldwide. While much of the discussion around NFT collectibles focused on high profile acquisitions and losses, NFTs themselves have only scratched the surface of what’s possible.
+ + + +We are still in the early days of blockchain. Keep in mind that we’ve been using the term “web 2.0” since 1999 (24 years ago!) but blockchain quietly entered the market as an underpinning technology for Bitcoin in 2008 (15 years ago). That difference of nine years may sound small, but consider that nine years ago most large companies were just starting to move to the cloud.
+ + + +Today, blockchain technologies power much more than basic cryptocurrency transactions. Banking and finance applications support cross-border payments that settle in seconds, not days. Multi- and cross-chain transactions via DeFi applications allow for increased crypto liquidity and improved exchanges with fiat currencies. Blockchain developers can build their own customized sidechains (more on those later) to support integration with real-time, low-cost transactions in video games and other use cases. SDKs are available in nearly every popular language, making it easy for today’s web2 developers to take their existing coding capabilities and embrace decentralized technology.
+ + + +Emerging applications of blockchain and crypto include:
+ + + +Despite everything that’s been reported in the news about crypto and blockchain this past year, their potential is still largely untapped. Blockchain advances are bringing economic and technical utility to both users and developers. It’s truly an emerging technology with seemingly endless opportunity.
+ + + +The technology comprising a blockchain is rather sophisticated. In the most simplistic sense, a blockchain is a database: it stores data in an ordered fashion. However, a blockchain doesn’t act as a simple database with all data on a single server, but rather as a distributed ledger: multiple computers across the world store redundant copies of all the data in the blockchain and share the work of confirming transactions, without needing a central authority or intermediary.
+ + + +In a blockchain, each node has a copy of the blockchain ledger and participates in the transaction validation process. New transactions are broadcast to the network, and nodes work together to verify the transaction data and add it to the blockchain. This process is known as consensus, and it ensures that all nodes on the network agree on the state of the blockchain and that it remains secure and tamper-proof.
+ + + +While some blockchains are centralized and managed by a single organization, most are open source and decentralized, meaning they are managed and maintained by a community of developers. For example, the XRP Ledger is a public, permissionless blockchain, meaning anyone on the internet can set up a validator and join the network. The reference implementation of the protocol is open source and any developer can propose amendments to this software. Because of the XRP Ledger’s decentralized nature, no singular authority can make decisions for the network. Instead, network changes are determined by a specific subset of validators, who vote on behalf of the XRP Ledger’s best interest. That being said, in order for amendments to pass, at least 80% of the validator community has to vote “yes” and that minimum threshold must be maintained for at least two weeks. If both of those conditions are met, then amendment proposals can be passed.
+ + + +Consensus protocols run cryptographic functions to ensure the integrity of the network and its ledger. These usually include:
+ + + +Validator nodes execute the consensus protocol and can often run on commodity hardware (depending on the energy and computation requirements for the specific blockchain). Different blockchains use different consensus protocols to compute the final state of a transaction on the ledger.
+ + + +Because the XRP Ledger is open source, anyone can learn how it works, contribute to the code base, and report issues. Or they can simply write and consume apps; mint, manage and otherwise interact with NFTs; and much more.
+ + + +The two most popular consensus algorithms have long been Proof of Work (PoW) and Proof of Stake (PoS).
+ + + +In PoW algorithms, every node on the network competes to solve cryptography problems in order to validate a transaction. That’s fine for small networks of a few dozen computers, but multiply this computational cost over 100,000+ nodes and it adds up very quickly. This is compounded by the fact that the fastest nodes to validate transactions often receive financial rewards, hence a competitive arms race to deploy thousands of powerful, electricity-hungry GPUs to solve these cryptographic puzzles faster than other nodes in the network.
+ + + +PoW methods are what led China to ban cryptocurrency mining altogether, the White House to issue a press release about energy concerns, and the Ethereum community to push for and switch to the more energy-efficient PoS methodology in 2022.
+ + + +In PoS algorithms, instead of solving a cryptographic puzzle on every node, nodes that hold a larger stake in the network (i.e. the greater the number of tokens, the greater the stake in the blockchain) are the ones to validate transactions. They still perform a cryptographic validation process, but it’s only a fraction of the nodes on the network with the biggest stake. The algorithms are no less complex and the validation mechanisms are similar to PoW, which is why PoS transactions can also take minutes or hours to be validated.
+ + + +Ethereum moved to PoS “because it is more secure, less energy-intensive, and better for implementing new scaling solutions compared to the previous proof-of-work architecture.” It was a tremendous shift in how that chain operated and resulted in more than 99.9% reduction in electricity consumption. So tremendous, in fact, that they termed it The Merge. According to CoinTelegraph, Ethereum on PoW was using 112 TWh per year and on PoS is now using 0.01 TWh per year. For reference, Bitcoin is still using tremendous energy—more than many countries on earth.
+ + + +There are many alternatives to PoS and PoW algorithms, with various tradeoffs to speed, centralization, and efficiency. Chains such as the XRP Ledger and Stellar use “federated consensus” or “proof of association” algorithms where a subset of nodes collectively build and agree on the next block of transactions. Other chains, such as Ignite, use hybrid systems that combine elements of federation and PoS. These systems are far more efficient than PoW and faster than both PoW and PoS because they eschew the wasteful work of competing to solve cryptographic puzzles. For example, transactions on the XRPL take 3-5 seconds to be validated, rather than minutes or hours.
+ + + +Additionally, both PoW and PoS typically let the winning validator build a block however they like—which leads to miners and validators gaming the system to get the maximum extractable value (MEV) from each block. Federated consensus algorithms are typically less susceptible to these problems because they always arrange each block of transactions in a canonical order.
+ + + +Web2 brought us rich application experiences, cloud computing, asynchronous communication, and plenty of centralization. It’s practically impossible to develop a web2 app without paying corporations and being subject to their privacy policies, terms and conditions, and fiduciary responsibility. Web3 gives developers the ability to write and run apps that are fully-independent, widely-available, and decentralized. No limits and no corporate dependencies.
+ + + +To make this a reality, most major blockchains are working hard to attract and onboard developers to their platforms with easy-to-use SDKs and high-quality documentation (e.g. Solana, Cardano, XRPL). Open-source blockchains are widely available and provide fertile ground for innovation. Each has built-in support for financial transactions using their native tokens (e.g. SOL, ADA, XRP), ensuring that people can pay and be paid.
+ + + +Many chains support the development of dApps—decentralized applications. They can be written in a variety of programming languages, depending on what the chains support. Generally speaking, the larger the developer community of a given chain, the more languages it supports. For example, Ethereum supports .NET, Go, Java, JavaScript, Python, Ruby, Rust, Dart, and Delphi. The XRPL supports Python, JavaScript/TypeScript, C++, Java, React.js and Ruby.
+ + + +Some blockchain apps are backed by or written as smart contracts. Smart contracts are tamper-proof, immutable pieces of code that live on the blockchain and facilitate interactions or agreements between the app, the user, and the chain. Blockchains offer simple abstractions and SDKs so developers can get up and running quickly with app development. For example, Ethereum offers a variety of application development tools to help people experiment, build front ends, and test their dApps and smart contract implementations. The downside to smart contracts is that, since they’re immutable and shared online, if anyone finds a bug in the contract’s code, they can exploit it to their advantage, and the developer can’t easily patch the vulnerability away. This makes developing smart contracts a delicate task with higher stakes than many other projects.
+ + + +The XRP Ledger supports programmability through a number of protocols and standards. It includes native transactors that provide out-of-the-box functions which are already battle-tested and standardized. The Hooks proposal would further extend programmability on the Ledger. Hooks are small, efficient pieces of code that allow for the quick and easy execution of logic before and after a transaction — all native to the Ledger. This is important because standard smart contracts can be complex and difficult to navigate, especially for developers that are new to web3.
+ + + +Unlike other protocols, the XRPL also has native support for NFTs, which means developers don’t need to build or maintain a smart contract in order to bring their NFT projects to life. This lowers the barrier to entry for developers, creators, and anyone else who wants to interact with NFTs on the XRPL. Additionally, automatic royalties are enforced at the protocol level which helps ensure maximum value for creators and developers. Core operations such as minting and burning are native to the Ledger to promote ease-of-use regardless of experience level.
+ + + +An upcoming amendment, XLS-30d, proposes a native Automated Market Maker (AMM) on the XRPL. The proposal will include bid and vote features, allow for simple token swaps, and should create deep liquidity between token and currency pairs. The AMM’s functionality allows application developers to create interfaces for traders and liquidity providers (LPs) and introduces a novel auction mechanism that incentivizes arbitrageurs while reducing the impact of impermanent loss faced by LPs.
+ + + +The XRPL community is also currently testing sidechains. Sidechains allow developers to build and experiment with customized features in a sandbox-like environment—connected to, yet distinct from the mainnet—enabling innovation without disrupting or compromising the mainnet. Sidechain features could eventually be proposed as amendments and be merged into mainnet if voted on by the community. There is also ongoing development and testing of an Ethereum Virtual Machine (EVM) sidechain to bring Ethereum’s native Solidity-based smart contracts to the XRPL ecosystem.
+ + + +As developers do more work on blockchains, we’ll inevitably see improvements in utility, security, scalability, cost and sustainability. The more adoption, the greater the improvements, and the greater the likelihood that more developers (and users) will further adopt this technology. The network effect and a fast-growing list of innovative features are already appealing to developers who want to move on from web2 conventions.
+ + + +The innovations underpinned by blockchain and advantages over web2 are getting hard to ignore. Web3 protocols are making it easier than ever to build on decentralized technologies. Web3 tech isn’t just “an upgrade” or “a step up” from web2—it’s a whole new paradigm of working on applications. They’re decentralized, permissionless, scalable, and stable. Developers can use what they already know and upskill to web3 technologies. For once, they can have skin in the game with full ownership of their assets and intellectual property. Using the programming languages they already know, they can increase their domain expertise and take advantage of decentralization.
+ + + +When choosing a chain to start on, developers should consider:
+ + + +Blockchain and crypto have the power to enable a better future, and there is a vibrant community of developers that are building, testing and iterating on top of the technology to help uncover future use cases and applications. Ripple is just one contributor among many to the XRP Ledger; as members of this developer community we are deeply committed to helping it grow and thrive.
+ + + +There are a number of programs like grants and bounties to help developers of all levels get started with the funding and resources they need to bring their web3 projects and applications to life. The XRP Ledger also recently launched an online learning portal where developers can learn more about the basics of crypto and blockchain, or dive straight into coding on the XRPL with courses in languages such as React.js (currently in beta).
+ + + +For additional information or to join the community, check out the developer Discord, view open source code and repos on GitHub, and follow @RippleXDev on Twitter where we regularly share updates, projects, new features, and fixes from the XRPL community.
+The post From Web2 to Web3: How developers can upskill and build with blockchain appeared first on Stack Overflow Blog.
+]]>The post The next gen web browser has no tabs, only spaces (Ep. 554) appeared first on Stack Overflow Blog.
+]]>Ben and Cassidy sit down with The Browser Company to talk about reimagining the web browser—and the way we use the internet. Plus: The best username out there (don’t @ us).
+ + + +Episode notes:
+ + + +Today’s guests from The Browser Company are software engineer Victoria Kirst and design lead Dustin Senos.
+ + + +The Browser Company is building a new kind of browser designed to keep users “focused, organized and in control.” Arc, their browser, is “full of big new ideas about how we should interact with the web” and has been called “the best web browser to come out in the last decade.”
+ + + +For an introduction to and first look at Arc, start with this video. You can also join the waiting list or subscribe to the Substack.
+ + + +Follow The Browser Company on Twitter.
+ + + +Connect with Victoria on LinkedIn or Twitter.
+ + + +Connect with Dustin on LinkedIn or Twitter.
+ + + +Special thanks to Ellis Hamburger, owner of the best username, for facilitating this terrific conversation with Victoria and Dustin.
+ + + +Congrats to Lifeboat badge winner Todd for answering How can I name a @Service with multiple names in Spring?.
+ + + + +The post The next gen web browser has no tabs, only spaces (Ep. 554) appeared first on Stack Overflow Blog.
+]]>The post Building a collaborative asynchronous work environment appeared first on Stack Overflow Blog.
+]]>Is there anything more annoying to hear when you’re elbows deep in a hairy bug?
+ + + +When I was working as a software engineer a few years ago, I remember putting on headphones with no music, just to keep people in the office from disturbing me when I really needed to focus. It’s frustrating, and disruptions waste a lot of time. Gloria Mark, a professor of informatics at the University of California, Irvine points out that it can take over 20 minutes to get back into a complex problem after being jolted out by a distraction.
+ + + +While remote work might make it easier to carve out focus time, it depends entirely on the company. Some still expect software engineers to be ready to respond to chat or email messages at any moment, and those who are slow may suffer professionally for it. Others bring developers into so many meetings that they rarely have an hour away from video calls to get any deep work done.
+ + + +So when I started my own business a couple of years ago, I decided we would do things a bit differently. I wanted to build a company that allowed me to have time for deep work, time to take walking breaks in the middle of the day, and time to pick up my son from school. Even more, I wanted to create a work environment that gave my employees the same privilege.
+ + + +The working model we developed is a form of asynchronous remote work. In an asynchronous environment, all or most of the work is done at the employees’ preferred working time. Employees use asynchronous work tools to communicate, and there are typically very few real-time meetings.
+ + + +Draft.dev remains almost completely asynchronous, even as our team has grown to over 12 full-time people and 300 technical writers. We don’t use real-time chat tools, and by letting people work in their own timezones, we are able to hire employees and contractors in over 50 countries around the world.
+ + + +I’m not alone in embracing asynchronous work though. There is a growing trend in companies of all sizes to adopt this style of work because of the productivity, lifestyle, and hiring benefits it affords.
+ + + +
For this piece, I interviewed several founders and leaders of asynchronous-first companies. You’ll hear more about why they adopted this work style, what they’ve learned about making it effective, the tools they use, and some of the challenges that arise in asynchronous work environments. Whether you’re looking for a job and curious about what it might be like to work at an asynchronous company, or you’re a leader who is considering rolling this out with your team, there will be some good takeaways here.
Initially, my reason for making Draft.dev asynchronous was personal. My partner and I had recently had our first child and with daycares closed during Covid, I needed to be home to watch him most days. I would try to schedule sales calls during his naps or in the evenings and spend most of the day watching him, responding to emails when I had little gaps of time.
+ + + +As I started hiring more people though, I realized there were other benefits to being all remote and mostly asynchronous.
+ + + +“The original reason we went asynchronous was the timezone distribution and the need to respect each individual’s productive time,” Sameera Perera, a manager at CloudExtend told me. He pointed out that his company of 44 is located around the world and some are night owls, while others are early risers. They have a few real-time meetings per week, but 90% of their workday is done asynchronously.
+ + + +My team’s experience has been similar. While we have some roles that need to be available for meetings with clients, most of our team spends their day focused on deep work like writing, editing, or coding.
+ + + +I’ve also found that in some regions of the world, it’s almost impossible to work at certain times of the day. For example, rolling blackouts in South Africa often force our team members there to move their workdays based on when they have power.
+ + + +Probably the most common reason technology companies move to asynchronous work is that it gives them access to the growing global talent pool. This was certainly a factor for me when I started Draft.dev. We grew from 0 to 80 clients in just two years, so I couldn’t find enough software engineers in the United States to write the volume of content we needed.
+ + + +Rishabh Kaul, Head of Marketing at Appsmith, had a similar experience as they had to hire quickly too. “After the first five employees, we decided to hire globally to access a broader talent pool,” he told me. “We have users from 140+ countries, with the top six all being from different time zones,” he said, adding that by hiring globally, they have support employees ready nearly 24/7.
+ + + +A less obvious benefit to working asynchronously is having a record of almost every conversation that happens in the company. While private email or chat threads aren’t ideal for documenting decisions, there are a few purpose-built tools I’ll discuss later for building documentation or training material from past discussions.
+ + + +“We end up documenting or having a trail for all discussions,” Rishabh Kaul told me, “which makes it easier for people to help themselves.”
+ + + +“We encourage documentation and regular updates in a public forum like Slack or Notion,” Ronak Ganatra, Marketing Director at Lano added, saying that they “try to minimize ‘important’ projects being kicked off in 1-on-1s,” because they don’t want any details to get lost.
+ + + +A common objection to asynchronous work is that collaboration is harder, but Brian Casel, CEO of ZipMessage said that he sees the opposite.
+ + + +“We actually collaborate much better because we are async,” told me, pointing out that everyone gets time to think about and organize their thoughts before they speak or write. “All messages are logged,” he told me, “so it’s really easy for us to link back to something someone said.”
+ + + +You might forget what someone said in a video call three months ago, but if you can go back through your message history, you can avoid losing important organizational knowledge.
+ + + +One of the benefits my team talks about most often is the high level of flexibility and autonomy they get thanks to our asynchronous environment. Employees are able to work around their lives, but also in the way they work best.
+ + + +“People are happier when they have flexibility, and when they are happier they are more productive,” Kiran Shahbaz, founder of GrowWell Ventures and Goodwork told me. “Our team really values the freedom and autonomy that remote and async work provides.”
+ + + +As a manger, having an asynchronous team means that I really can’t rely on metrics like hours worked. Whenever possible, I try to use output-based metrics, which encourage team members to get more efficient at their jobs rather than maintain the status quo.
+ + + +One thing that I find challenging about asynchronous work as my company grows is that I can’t get answers to all my questions immediately. I know that’s probably a good thing (because I’m not constantly interrupting my teammates), but it’s required an adjustment to my expectations around work and forced me to get better about processes.
+ + + +In addition to the mindset shift required, there are a few other things you’ll need to do to go async:
+ + + +“[We ask everyone to] have everything posted on public channels to increase transparency,” Rishabh Kaul told me, adding that this means they often have to “train people to emphasize the written word.”
+ + + +Brian Knoles of Bellawatt’s advice was similar. “Writing is more time consuming than speaking,” he said, “but it also helps to clarify thinking in a different way. We’ve all had an ‘aha!’ moment while typing up something we were confused about.”
+ + + +I’ve always thought that writing was an incredibly important skill for software developers, and Harvard neuroscientist, Juliette Han says the same is true for everyone:
+ + + +++ + + +“The most underrated skill that successful people, especially introverts, have is the ability to write clearly. It doesn’t matter what industry you’re in. If you are a thoughtful and strategic writer, you’ll be more confident in your interactions—in emails, public speaking or even just small talk.”
+
So whether your company is asynchronous or not, it’s worth investing time to become a better writer, but if you join an async company, this is doubly true.
+ + + +As writing becomes more ingrained in your daily life at an asynchronous company, it’s only natural that some of that writing will turn its way into documentation. “We document everything that is done more than once,” Kiran Shahbaz told me. “Because we don’t have the luxury of ad-hoc questions and answers, these need to be prepared beforehand.”
+ + + +Of course, not all documentation is written. “We record a lot of calls,” Rishabh Kaul said, “Many meetings are recorded, especially meetings that have more than two or three people.” These recordings then serve as a library of context for people who couldn’t make the meeting and want to review it afterwards.
+ + + +Finally, we’ve found that automated processes also really help our team at Draft.dev. Using tools like Zapier and Airtable, we’ve been able to automate many of our internal communications, allowing our teams to work more efficiently at their own time.
+ + + +While there are a handful of tools that just about every office worker is familiar with (Zoom, Slack, Google Docs, etc.), there are some tools that work especially well for asynchronous teams.
+ + + +For example, Stack Overflow for Teams offers a collaborative place for teams to ask and answer questions without interrupting each other in real-time chat platforms. Similarly, Twist is organized around threads and works more like a traditional forum than a real-time chat tool.
+ + + +My team uses a daily standup tool called Status Hero to record what we’re working on each day without all having to hop on a call in real-time. Other teams I spoke to use tools like Metro Retro to capture and share their agile retrospective notes both synchronously and asynchronously.
+ + + +Finally, I’ve gotten to be a big fan of leaving async video messages through ZipMessage. While real-time calls are useful for collaborating quickly, a lot of meetings could be replaced by video messages.
+ + + +While I think a highly asynchronous environment can work for the right type of team and business, it introduces its own set of challenges. Having tools and metrics will help you, but ultimately, it’s not the right work environment for every company in every kind of business.
+ + + +First, if employees are allowed to work when, where, and how they want, you have to be able to trust them. “Async only works with 100% reliable team members,” Kiran Shahbaz told me. Ronak Ganatra agreed, adding that everyone must be “accountable and independent.”
+ + + +That last part can be tough for some managers to accept. I have worked for a few managers who didn’t believe people working from home were “really working,” and async won’t work in a low-trust environment.
+ + + +For me, the key is having good work and result-tracking measures in place. For some roles, employees log and report their hours weekly, while other roles are paid on an output basis. This allows managers to compare performance objectively, even if they’re not able to meet with each employee face-to-face every day.
+ + + +Hiring employees who are used to working asynchronously also helps. I look for people who have worked remotely and independently in the past. For example, a lot of freelancers tend to succeed in an asynchronous environment because they know how to motivate themselves and stay focused without a boss looming over their shoulders.
+ + + +But employees have to be able to trust each other too. “Team members should remember that asynchronous means someone might not be available when you want them to be,” Anthony Eden of DNSimple told me. “Team members must accept and respect their fellow team members’ schedules and work habits.”
+ + + +If you can’t trust your fellow team members or your employees, then asynchronous work is not going to be a good fit.
+ + + +++ + + +“Regular sharing is a habit that takes time to build.” – Anthony Eden, DNSimple
+
Almost every new employee we hire goes through a period of time where they’re still trying to wrap their head around this asynchronous work thing. For example, we use Trello for project management, so if someone has an idea for a new project, our company’s best practice is to add it to the correct backlog and tag anyone you’d like to review it for you.
+ + + +But it usually takes new employees three to four months to remember that this is how they’re supposed to do it, so I find myself stopping long email threads with a reminder to move the discussion to the proper forum.
+ + + +Some people struggle to get into a consistent work routine. One of our core values is that “we work at a sustainable pace,” so I often have to remind team members not to put in extra time on the weekends or evenings unless that’s when they prefer to work. Just because work is always available doesn’t mean you have to be constantly plugged into it.
+ + + +Finally, some tasks and roles are simply not suited to asynchronous work. Everyone I talked to for this mentioned how challenging brainstorming in an asynchronous workplace is. Many of them use real-time meetings for that work and regular team check-ins that require more back-and-forth at a quicker pace.
+ + + +Our account management and sales teams are also much more synchronous than our production team due to the nature of their work. Clients expect availability in their timezones, and responding to a client question quickly can often build a lot of trust. While we encourage these teams to set boundaries, we also want to serve our clients the best we can.
+ + + +The key thing is to be honest with new hires about the amount of real-time vs. asynchronous time their role entails. Most people will understand as long as you’re open about it.
+ + + +For technology workers, remote work is becoming the norm, but asynchronous workplaces are still relatively rare. This working style requires total buy-in across the company and a high degree of trust between employees and managers, so it may never become the standard. That said, it has advantages, especially for engineers, writers, and other knowledge workers who need to spend a lot of time in deep work.
+ + + +What do you think? Have you ever worked in an asynchronous environment? Did you like it or not? Find me on Twitter to continue the conversation.
+The post Building a collaborative asynchronous work environment appeared first on Stack Overflow Blog.
+]]>The post The Overflow #170: Wary about AI assistants appeared first on Stack Overflow Blog.
+]]>Can Stack Overflow save the day? stackoverflow.blog
Tell us how Stack Overflow helped you and enter to win a limited edition key cap!
Building an API is half the battle: Q&A with Marco Palladino from Kong stackoverflow.blog
API gateways, service mesh, and GraphQL, oh my!
Visible APIs get reused, not reinvented stackoverflow.blog
How open API specifications can help developers—and computers—understand your APIs.
Developers think AI assistants will be everywhere, but aren’t sure how to feel about it stackoverflow.blog
The things we expect to succeed aren’t always the things we’re hoping to see more of.
Need help scaling your company growth? promotion
For startups and small to medium-sized businesses (SMBs) working to expand their customer base, revenue, and standing in their industries, adopting a DevSecOps platform is one move that can help make all of that growth happen.
Did mechanical hard drives often malfunction in high-elevation places such as Bogota? retrocomputing.stackexchange.com
It depends on whether the hard drive had helium in it or not.
How are the banks behind high yield savings accounts able to pay such high rates? money.stackexchange.com
Maybe they lose money on every account, but make up for it in volume!
What are the benefits of tracking solved bugs? softwareengineering.stackexchange.com
Those who forget history are doomed to reintroduce bugs in prod.
What happens if you carbonate ethanol? chemistry.stackexchange.com
Who wants a round of burptinis?
From gaming with your eyes to coding with AI: New frontiers for accessibility github.com
Accessibility is forging new frontiers in every industry thanks to open-source contributions!
Adventures in time: Debugging a daylight saving bug alextaylor.ca
We still have to deal with daylight savings time, so timezone bugs will never die.
The first version of your favorite digital products www.theversionone.com
If you’re ever feeling down about how your project doesn’t look that great from the start, here’s a fun little site showing what “Version 1” of some of your favorite services looked like!
Moving from Vue 1 to Vue 2 to Vue 3: A case study of migrating a headless CMS system www.smashingmagazine.com
Handling migrations within long-term projects can be tough, and this is an interesting deep dive into how one team did it.
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #170: Wary about AI assistants appeared first on Stack Overflow Blog.
+]]>The post After crypto’s reality check, an investor remains cautiously optimistic (Ep. 553) appeared first on Stack Overflow Blog.
+]]>Kenny Hearn, Fund Manager and Head of Research at SwissOne Capital, tells Ben about his path from traditional asset management to Web3 specialist and why he remains optimistic about the future of the market.
+ + + +Episode notes:
+ + + +In his role at SwissOne Capital, Kenny champions investments in Web3 and the metaverse. A writer on all things crypto since 2013, he’s a regular contributor to the US Chamber of Commerce.
+ + + +The collapse of Three Arrows Capital and FTX eroded investor trust in crypto, but Kenny remains “cautiously optimistic” about the market’s future.
+ + + +Connect with Kenny on LinkedIn or Twitter.
+ + + +Congratulations are in order for Lifeboat badge winner xray1986 for their answer to Unicode symbol that represents “download”.
+ + + + +The post After crypto’s reality check, an investor remains cautiously optimistic (Ep. 553) appeared first on Stack Overflow Blog.
+]]>The post Your tech toolbox: The middle ground between tech chaos and rigidity appeared first on Stack Overflow Blog.
+]]>Raw startups are often chaotic and scattered. “Move fast and break things!” was repeated in the standups of hundreds of startup engineering orgs. Typically, startups tend to build monolithic systems to reduce friction in creating and changing features. As time goes on, the monolithic architecture begins to show strain, and almost inevitably begins to be broken up.
+ + + +Teams begin to take ownership of the new services, usually adhering to Conway’s Law. Since each service is only owned by a single team (or should be), questions inevitably arise related to the technologies used for each of them.
+ + + +Should the backend administrative system, used by a dozen internal employees, be written using the same frameworks and stack as the tight, performance-critical end-user system? Should batch processors have the same technical footprint as stream processors? Should analytics databases use the same solution as the one used for ad-hoc queries?
+ + + +Some engineers love to experiment with new, bleeding-edge technologies. Others warn of the perils and demand adherence to the tried-and-true. As the company grows ever bigger, the same sorts of problems emerge over and over again to be solved. Do you solve those problems the same way you did earlier because it’s already done? Or do you go with a new approach that offers more benefits?
+ + + +How these problems get solved becomes more critical as a startup transitions to a medium-sized company.
+ + + +This article discusses all kinds of technology from a software engineering perspective. This can include programming languages, frameworks, database systems, ways to store and transfer files, schema definition systems, etc. I will use the word tech as a shortcut to describe this list of solutions, systems, and projects.
+ + + +At one extreme, we could simply allow every team to choose whatever tech they wanted to use with full autonomy. There’s no oversight committee, no red tape, and no blockers to doing what they want how they want.
+ + + +At the other extreme, whatever choice was made at the company’s inception becomes the one and only solution that must be used. If the first application was made using Python and Postgres, then every service must use only Python and Postgres.
+ + + +The advantages and disadvantages are swapped here.
+ + + +As you can guess, the “right path” is somewhere in the middle of these extremes. At Flipp, the term used is the Tech Toolbox, and it works like this.
+ + + +Crucial to the success of this framework is that it should have three processes:
+ + + +There should be a committee of senior, staff, or principal engineers who manage these processes. This sounds heavy-handed, but in reality, once the toolbox is set and disseminated properly, these processes happen very rarely.
+ + + +If a team feels that none of the tech in the toolbox currently solve its problem set and that a new tech could be broadly useful across the team or company, it can petition the committee to add it to the toolbox.
+ + + +This petition needs to be presented as a business case. This doesn’t mean that the team needs to do research with actual dollars attached to it. They need to be able to argue one or more of the following:
+ + + +Generally, there should be some kind of data attached to this. In the latter point, it might simply be surveys of the engineers on the team.
+ + + +Once the committee is satisfied, the tech is considered pending approval. The requesting team should proceed with a proof-of-concept implementation of the new tech so that any kinks or surprises can be ironed out. Once this is deemed a success, the tech can be approved in the toolbox.
+ + + +If the tech fails the process, that doesn’t mean the proposal is dead in the water! Proposals can always be revisited if there is new information or use cases. And the proposing team always has the option of using it for one-offs (see below).
+ + + +Periodically, the committee should speak to the engineers who manage the systems they own and see if a particular tech has fallen out of favor, and if so, why. Sometimes a new tech entirely supplants an older one and is deemed unwise to use since the new one is better in most respects for the use case in question.
+ + + +If the committee and engineers agree, the tech in question then becomes demoted to discouraged. This means that no new projects should be built with it, and all existing projects using it should have some kind of plan to move off of it if possible.
+ + + +Once as many services as possible have moved off it, the tech can be moved to not allowed. There can be legacy systems using the old tech that are grandfathered in and allowed to stay, but these are “special cases” and don’t affect the overall status of the tech in the toolbox.
+ + + +No one likes working for tyrants, and the tech leadership committee is no different. There are always cases where a tech that didn’t make the cut or is marked as discouraged still needs to be used.
+ + + +At Flipp, we moved Node.js from approved to discouraged for our end user-facing systems, and effectively replaced it with Go. However, we identified that there are some cases that Go is not well suited for—data munging arbitrary JSON files, for example, or using third-party SDKs that often are better maintained in JavaScript. These projects were able to argue their case and got a pass, with the caveat that these teams were on their own for support and tooling.
+ + + +With a tech toolbox, we have a single central document we can point to explaining what we use at Flipp and why. We have a “paved road” to make it easier to create projects using this technology, such as an app generator, shared libraries, deployment support, and more. We have guilds that meet regularly and take on projects to improve the usage and documentation for how we use that tech within the company. And we have an explicit process to make changes to this list so engineers don’t feel disenfranchised.
+ + + +As your company grows, technology decisions become more costly. Having a framework like this in place will provide a defined path forward.
+The post Your tech toolbox: The middle ground between tech chaos and rigidity appeared first on Stack Overflow Blog.
+]]>The post Moving up a level of abstraction with serverless on MongoDB Atlas and AWS (Ep. 552) appeared first on Stack Overflow Blog.
+]]>The history of computing has been a story of moving up levels of abstraction: from hard-coding algorithms and directly manipulating memory addresses with assembly languages to using more natural language constructs in high-level general purpose languages to abstracting the hardware of the computer in cloud compute. Now serverless functions take that abstraction even further. We’ve made the algorithms that process data simple and natural; MongoDB wants to do the same for how we persist data.
+ + + +On this sponsored episode of the podcast, we chat with Andrew Davidson, SVP Products at MongoDB, about how they’re turning a database into a fully-managed service that developers can use in a more natural way. Along the way, we discuss how the cost bottleneck has moved from the storage media to developers’ minds, how greater abstractions can enable developers, and how to get insights from production data faster.
+ + + +Episode notes
+ + + +Try MongoDB Atlas on AWS for free.
+ + + +You can get started with MongoDB Atlas directly from the AWS Marketplace.
+ + + +If you’re at a startup, you can take advantage of their special offer for startups.
+ + + +The community edition of their classic database is available to download as well.
+ + + +If you’re looking to learn a thing or two before diving in, check out MongoDB University.
+ + + +Our thanks to Great Question badge winner Derek 朕會功夫 for asking How can I reverse an array in JavaScript without using libraries? You know the rarest kung fu of all: asking great questions.
+ + + + +The post Moving up a level of abstraction with serverless on MongoDB Atlas and AWS (Ep. 552) appeared first on Stack Overflow Blog.
+]]>The post What our engineers learned building Stack Overflow (Ep. 551) appeared first on Stack Overflow Blog.
+]]>Charles “Cobih” Obih and Radek Markiewicz of the Stack Overflow platform team join Ben and Ryan to talk about changes to the inbox and what it’s like to build Stack Overflow’s public platform.
+ + + +Episode notes:
+ + + +The inbox improvements were Radek’s graduation project. Not bad for a newbie.
+ + + +Not everyone likes change, and the inbox change was no exception. So we looked into fixing that.
+ + + +Read about what our engineering team learned building and scaling Stack Overflow to support millions of users.
+ + + +Connect with Radek on LinkedIn.
+ + + +Find Cobih on LinkedIn and Twitter.
+ + + +Longtime staff member Yaakov Ellis is on LinkedIn and Twitter.
+ + + +Congrats to user HelloCW on receiving a Socratic Badge for asking a well-received question on 100 separate days and maintaining a positive question record.
+ + + + +The post What our engineers learned building Stack Overflow (Ep. 551) appeared first on Stack Overflow Blog.
+]]>The post Who builds it and who runs it? SRE team topologies appeared first on Stack Overflow Blog.
+]]>To begin with, we need to distinguish between fulfilling the SRE principles and an organizational structure for SRE. The SRE principles are:
+ + + +It is vitally important to understand that the SRE principles do not dictate any organizational structure. Rather, the SRE principles can be followed by teams embedded in several different organizational structures.
+ + + +An SRE practice where the SRE principles are followed can succeed either with a central SRE team, without a central SRE team, or with several central SRE teams comprising an SRE organization. With this, what are the options to organize well for SRE?
+ + + +Organizing for SRE must start with a fundamental decision: “Who builds and who runs the services?” This gives rise to several options ranging from the traditional “you build it, ops run it” to the modern “you build it, you run it.” The main options in-between are “you build it, you and SRE run it” and “you build it, SRE run it.” In Establishing SRE Foundations, these options are aligned on the so-called “who builds it, who runs it” spectrum. The spectrum is shown in the figure below.
+ + + +
(Image attribution: “Establishing SRE Foundations”)
+ + + +What is important to understand about the options on the spectrum are the incentives they provide for the development teams to implement reliability. With “you build it, you run it,” the incentives are maximized because developers are on-call and do not want to be woken up in the middle of the night due to reliability issues. This will prompt the developers to do everything possible to implement reliable services, though it does add yet another responsibility to developers. These incentives diminish with every other option.
+ + + +With “you build it, ops run it,” the incentives are minimal and can lead to the notorious chasm between development and operations teams. The chasm results in developers throwing their code over the wall to operations engineers. In this case, neither the code is written with operability in mind nor the operations engineers possess the knowledge to operate it. We therefore exclude this option in the considerations below.
+ + + +Other differences between the options on the “who builds it, who runs it” spectrum include knowledge synchronization between teams, incident resolution times, service handover for operations, establishment of an SRE organization, etc.
+ + + +Once an organization selects an option from the “who builds it, who runs it” spectrum, they can set up an organizational structure for SRE. To do so, the following questions need to be answered:
+ + + +The cross product of
+ + + +and
+ + + +yields nine sensible SRE Team Topologies. These are described in detail in Establishing SRE Foundations. In the next section, we provide an overview of the topologies.
+ + + +The SRE team topologies are embedded in the development, operations, and SRE organizations of an enterprise. To avoid ambiguity, here are the primary responsibilities of the three organizations:
+ + + +| Organization | Primary responsibilities |
| Development organization | Build products Depending on the SRE team topology: Run products to the extent agreed |
| Operations organization | Provide tools as a service Depending on the SRE team topology: Build and run the SRE infrastructure Run products to the extent agreed |
| SRE organization | Depending on the SRE team topology: Build and run the SRE infrastructure Run products to the extent agreed |
That is, a selected SRE team topology determines to a great extent the primary responsibilities of the development, operations, and, if it exists, SRE organization. Below is the list of nine SRE team topologies from Establishing SRE Foundations.
+ + + +SRE Team Topology 1:
+ + + +| Development organization | You build it, you run it with no dedicated SRE role. Every developer is an SRE on rotation |
| Operations organization | SRE infrastructure team |
| SRE organization | Does not exist |
This is a classic “you build it, you run it” SRE team topology as followed by Amazon, for example.
+ + + +SRE Team Topology 2:
+ + + +| Development organization | You build it, you run it with a dedicated SRE role in the team |
| Operations organization | SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology introduces a dedicated SRE role in the development team. That is, unlike the SRE team topology 1, not every developer is an SRE on rotation here.
+ + + +SRE Team Topology 3:
+ + + +| Development organization | You build it, you run it with a dedicated SRE role in the team and a dedicated developer on rotation |
| Operations organization | SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology is a combination of the SRE team topologies 1 and 2. There is a dedicated SRE role in the team that runs the product together with another developer on rotation.
+ + + +SRE Team Topology 4
+ + + +| Development organization | You build it, you and SRE run it with a dedicated SRE team |
| Operations organization | SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology introduces a dedicated SRE team placed in the development organization. The members of the SRE team run the product in a shared on-call together with the developers from development teams.
+ + + +SRE Team Topology 5
+ + + +| Development organization | You build it, you & SRE run it |
| Operations organization | Dedicated SRE team and SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology places a dedicated SRE team into the operations organization. Like in the SRE team topology 5, the members of the SRE team run the product in a shared on-call together with the developers from the development teams.
+ + + +SRE Team Topology 6
+ + + +| Development organization | You build it, you and SRE run it |
| Operations organization | SRE tool chain procurement and administration |
| SRE organization | Dedicated SRE team and SRE infrastructure team |
This SRE team topology introduces a dedicated SRE organization. The SRE team running the product together with the development teams is in the SRE organization. The SRE infrastructure team building and running the SRE infrastructure is in the SRE organization too. The shared on-call is the same as in the SRE team topologies 4 and 5. This is roughly the SRE team topology employed by Facebook with their production engineering organization. At Facebook, it is called the “centralized reporting, embedded locality” model.
+ + + +SRE Team Topology 7
+ + + +| Development organization | You build it, SRE run it with a dedicated SRE team |
| Operations organization | Dedicated SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology places the responsibility of running the product onto a dedicated SRE team placed in the development organization. However, if the services fall below an agreed service level, the SRE team “returns the pager” to the development team until the agreed service level is reached again.
+ + + +SRE Team Topology 8
+ + + +| Development organization | You build it, SRE run it |
| Operations organization | Dedicated SRE team and SRE infrastructure team |
| SRE organization | Does not exist |
This SRE team topology places the responsibility of running the product onto a dedicated SRE team placed in the operations organization. As in SRE team topology 7, if the services fall below an agreed service level, the SRE team “returns the pager” to the development team until the agreed service level is reached again.
+ + + +SRE Team Topology 9
+ + + +| Development organization | You build it, SRE run it |
| Operations organization | SRE tool chain procurement and administration |
| SRE organization | Dedicated SRE team and a dedicated SRE infrastructure team |
This SRE team topology places the responsibility of running the product onto a dedicated SRE team placed in the SRE organization. As in SRE team topology 7, if the services fall below an agreed service level, the SRE team “returns the pager” to the development team until the agreed service level is reached again. This is the SRE team topology employed by Google.
+ + + +In addition to the differences in organizational structure, different SRE team topologies vary in other areas such as knowledge synchronization between teams and organizations, effort for service handover for operations, incident resolution times, and more. An often overlooked difference is the SRE cultural identity created by an SRE team topology.
+ + + +An SRE cultural identity is based on three identity dimensions: a product-centric identity, an incident-centric identity, and a reliability user experience-centric identity. A product-centric SRE identity is when SREs strongly identify themselves with the product they run. They are not just SREs, they are (for example) Microsoft Office 365 SREs taking pride in the product. This is typical when SREs are placed in the development organization.
+ + + +An incident-centric identity is when SREs are focused on having as few incidents as possible in products they run. These SREs pride themselves in metrics like only having just a few incidents a year. This is typical when SREs are placed in the operations organization.
+ + + +A reliability user experience-centric identity is when SREs are focused on achieving the user experience of reliable products for the products they run. These SREs pride themselves in having SLOs tracking the user experience well, having the SLOs fulfilled by the products they run, etc. This is typical when SREs are placed in a dedicated SRE organization.
+ + + +An SRE team topology spawns an SRE cultural identity triangle with the vertices: product-centric identity, incident-centric identity, and reliability user experience-centric identity. A particular SRE team topology will lean more towards one of the vertices on the SRE identity triangle.
+ + + +Once an SRE team topology has been selected, the question of transitioning from the current setup to the selected one becomes important. If a new SRE organization gets established during the transition, it needs to be positioned within the overall product delivery organization.
+ + + +The SRE organization can be viewed as a cost center, an asset, a business partner, or a business enabler. The goal of the newly minted head of the SRE organization is to position the organization as much as possible to be the business enabler.
+ + + +Within the SRE organization, an SRE career path needs to be established to provide a proper career ladder for SRE professionals as they grow their skill and practice. A defined SRE career path also helps attract SRE talent to the company.
+ + + +SRE principles can be fulfilled by many organizational structures. In this article, nine SRE team topologies were presented, which can be widely found in the industry. A decision to choose a particular SRE team topology needs to be made taking into account the current organizational setup and culture, the envisioned target organization and SRE cultural identity, knowledge synchronization requirements between teams, and other factors.
+ + + +More details on how the decision can be made are available in the talk “Establishing SRE Foundations: Aligning The Organization On Ops Concerns Using SRE Team Topologies” from the DevOps Enterprise Summit US 2022 and the corresponding book Establishing SRE Foundations: A Step-by-Step Guide to Introducing Site Reliability Engineering in Software Delivery Organizations by the author.
+The post Who builds it and who runs it? SRE team topologies appeared first on Stack Overflow Blog.
+]]>The post What’s different about these layoffs appeared first on Stack Overflow Blog.
+]]>This is scary. People have lost their livelihoods. Thousands of people in the United States on H-1B work visas, along with their families, face deportation unless they can find another job within 60 days. Diversity gains in tech have been dealt a serious blow. These layoffs have spotlighted the tenuous and unsustainable situation the US immigration system creates for foreign-born workers; the disproportionate impact of tech layoffs on women, people of color, and parents; and the still-shifting landscape of the post-pandemic economy.
+ + + +More than 280,000 people were laid off from tech jobs in 2022 and the first two months of 2023.
Many of us have been through layoffs before, sometimes several times. My career at tech companies began in 2014, and in that time I’ve been laid off once. My colleague Ryan Donovan recently wrote about his experiences with tech startups and how to handle industry-wide layoffs, whether you recently lost your job or you’re just afraid you might.
+ + + +As the discouraging headlines and meta-narrative about what the layoffs really mean continue, we thought it was worth revisiting how our core community of developers has been experiencing and coping with this ongoing reality—and exploring what sets this economic situation apart from previous dips and busts.
+ + + +Any conversation about tech layoffs in 2023 has to account for the fact that, as The Atlantic’s Derek Thompson put it, “the post-pandemic economy has been much weirder than most people anticipated.”
+ + + +In 2020, Thompson writes, people noted our rising dependence on technology like streaming video and food-delivery apps and predicted an “acceleration” of the rapidly digitalizing pandemic economy: “In this interpretation, the pandemic was a time machine, hastening the 2030s and raising tech valuations accordingly.” In response, hiring across tech jumped. By 2022, it was clear that the pandemic had produced less of a steady, sustainable acceleration and more of a…well, bubble. And we all know what bubbles tend to do.
+ + + +The current economy has less in common than you might think with the dot-com bubble or the Great Recession.
But the current economy has less in common than you might think with the wreckage of the dot-com bubble or the Great Recession. Overall, it’s still a good time to work in tech, and the hiring market remains robust: One survey found that almost 80% of people laid off in tech found new roles within three months of launching their job search. There are more open tech positions than people to fill them (about 375,000, according to one estimate), and job listings between January and October 2022 were up 25% over the same period in 2021.
+ + + +If the job market isn’t as dire as we think, why does this round of layoffs feel so widespread, affecting companies often perceived as more recession-proof than their peers? Part of the answer may be what organizational behavior experts have termed “copycat layoffs.”
+ + + +“Laying off employees turns out to be infectious,” writes Annie Lowrey in The Atlantic. “When executives see their corporate competitors letting go of workers, they seize what they see as an opportunity to reduce their workforce, rather than having no choice but to do so.” Organizations seeking to reduce risk in the face of an anticipated economic downturn may jump on the opportunity to trim costs without raising a ruckus. Companies that lay off employees while everyone else is doing it also reduce their risk of reputational damage: they’re not the only ones doing it, which suggests that layoffs are due to external economic factors, rather than company-specific shortcomings.
+ + + +In many cases, workers laid off by household-name tech companies have found new jobs outside the traditional parameters of the tech industry, where their skill sets are in high demand. As Matt McLarty, global field chief technology officer for MuleSoft, told CNBC, businesses that have long needed tech professionals to upgrade their stack or guide a long-delayed cloud migration can now scoop up freshly laid-off tech workers (and those for whom Silicon Valley has lost its luster). Companies in energy and climate technology, healthcare, retail, finance, agriculture, and more are hiring tech pros at a steady clip, even if FAANG companies are less bullish. It’s been said before that every company is a tech company, but in 2023, that’s truer than ever.
+ + + +In fact, the biggest difference for tech workers this year, reports The New Stack, is that “the greatest opportunities may not lie exclusively in the FAANG companies anymore, but in more traditional industries that are upgrading their legacy stacks and embracing cloud native.”
+ + + +The greatest opportunities may [lie] in more traditional industries that are upgrading their legacy stacks and embracing cloud native.
Some of those opportunities also lie with startups, including ones helmed by Big Tech veterans ready to turn their layoffs into lemonade. And efforts are underway to build the leading generative AI platform and an expanding ecosystem of related tools. “There’s a lot of investment firms that are still bullish about the startup space,” Lindsay Grenawalt, chief people officer at Cockroach Labs, which raised $278 million in Series F in late 2021, told The New Stack.
+ + + +So whether you’ve been affected by the recent spate of layoffs or not, it’s worth expanding your list of potential employers to include companies—even industries—you’ve never considered. You might find that they’re thrilled to have you.
+ + + +One place to start is Indeed’s layoff support resources, offered in collaboration with Stack Overflow, Glassdoor, and Tech Up For Women. You’ll find free, automated tools to optimize your job search; paid professional services like career coaching and resume building; and articles and webinars to help you navigate things like negotiating a severance package, understanding unemployment eligibility, pivoting to a new career, and more.
+ + + +We’re also teaming up with Indeed to provide a 45-minute learning and development webinar where experts at Indeed will share best practices for job hunting and professional development while answering your career questions. Register below to get your questions answered by the experts!
+ + + +
The post What’s different about these layoffs appeared first on Stack Overflow Blog.
+]]>The post The Overflow #169: Fear the Frankencode appeared first on Stack Overflow Blog.
+]]>Five Stack Exchange sites turned ten years old this quarter! stackoverflow.blog
High fives to a Stack Exchange milestone for English Language Learners, Magento, Reverse Engineering, Sustainable Living, and Tridion!
After the buzz fades: What our data tells us about emerging technology sentiment stackoverflow.blog
Developers expect AI assistants to be everywhere soon, but they aren’t necessarily happy about it.
“Move fast and break things” doesn’t apply to other people’s savings (Ep. 544) stackoverflow.blog
Christine Ryu, Engineering Lead at fintech platform Flourish, joins the home team to talk about how technology is transforming finance for everyone from big banks to individual consumers.
From writing code to teaching code (Ep. 545) stackoverflow.blog
After 37 courses and half a million students, a former developer reflects on his journey to instructor.
MongoDB Atlas University Course promotion
Learn how to deploy a global, multi-cloud database with MongoDB Atlas. Get hands-on experience creating and deploying a database with this free course.
Protect public project from potential patents opensource.stackexchange.com
Check out the concept of defensive publishing, which is the legal equivalent of posting “First!”
Does the Earth constantly lose mass? astronomy.stackexchange.com
It loses a tiny amount as air escapes and astronauts leave flags on the Moon. But none of this is the Moon’s fault.
Did courtiers of antiquity hold in their pee or did they have common commodes available in the king/queen’s court? history.stackexchange.com
To pee or not to pee, that is the question.
How to politely decline a take-home test task? workplace.stackexchange.com
That depends: do you want the job or not?
Emergent abilities of large language models www.assemblyai.com
If you’ve heard the term “large language model” (or LLM) a lot lately, you’re not alone. Here’s a look at how new capabilities emerge as the LLM scales <em>without changing the algorithm</em>.
How to become a DevOps engineer: An untimed guide www.theopalblog.com
DevOps is a huge space with a ton of opportunities. If you’re interested but unsure how to get started, this is a great guide for you.
Why you need to know your site’s performance plateau (and how to find it) www.speedcurve.com
When do your website performance metrics plateau?
Data Reliability Engineering Conference drecon.org
Stack Overflow’s own director of reliability engineering, Ellora Praharaj, will be speaking at DRE Conference. If you can’t make it in person, check out the virtual option!
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #169: Fear the Frankencode appeared first on Stack Overflow Blog.
+]]>The post Let’s talk large language models (Ep. 550) appeared first on Stack Overflow Blog.
+]]>The home team unpacks their complicated feelings about AI, the Beyoncé deepfake that got kpop hopes up, and the pandemic’s ripple effects on today’s teenagers. Ben, the world’s worst coder, tells Cassidy and Ceora about building a web app with an AI assistant.
+ + + +Episode notes:
+ + + +Our recent Pulse Survey showed how technologists visiting Stack Overflow feel about emergent technologies. The consensus is clear: AI assistants will soon be everywhere, and developers aren’t sure how they feel about that. Check out the podcast here or dive into the blog.
+ + + +Learn more about the emergent abilities of large language models (LLMs).
+ + + +For more on the intersection of AI and academia, listen to our episode with computer science professor Emery Berger or read his essay on how academics are coping with AI that can ace exams and do everyone’s homework.
+ + + +Catch up on the adventures of the worst coder in the world.
+ + + +Congrats to user d1337, whose question How to assign a name to the size() column? won a Stellar Question badge.
+ + + + +The post Let’s talk large language models (Ep. 550) appeared first on Stack Overflow Blog.
+]]>The post Can Stack Overflow save the day? appeared first on Stack Overflow Blog.
+]]>To that end, we want to hear directly from YOU: Stack Overflow enthusiasts with stories of how our public platform or Stack Overflow for Teams swooped in, taught you something new, saved the day, or even introduced you to your spouse. (We kid…sort of.) Did Stack Overflow help resolve a pesky bug in your code? Or maybe Stack Overflow for Teams helped you find an answer at work and made you more productive? Perhaps someone on our site or in your Teams instance taught you something new that unlocked answers on a side project you’ve been working on. If you’ve got a story about Stack Overflow or Stack Overflow for Teams, we want to hear all about it.
+ + + +As an extra special treat for our community members who submit their stories, we partnered with artisan key cap makers Tiny Makes Things and Clackeys on a limited edition, 3D Stack Overflow Key Cap! Every individual who submits a story about how Stack Overflow or Stack Overflow for Teams saved the day will be automatically entered into a drawing to win a key cap. As a coda to our long love affair with the Key and the Key V2, our limited edition Stack Overflow Key Cap is the perfect decorative accoutrement for a keyboard enthusiast or a fun Stack Overflow collectible. But don’t wait! We have an extremely limited number of key caps, and we want to share these with as many of our community members as possible.
+ + + +Submit your story for Stack Overflow Saved the Day here.
+ + + +Submit your story for Stack Overflow for Teams Saved the Day here.
+The post Can Stack Overflow save the day? appeared first on Stack Overflow Blog.
+]]>The post Visible APIs get reused, not reinvented (Ep. 549) appeared first on Stack Overflow Blog.
+]]>With so many companies offering API products, it can be hard to get your particular APIs discovered and used by the developers who need them most. You might have the best, most useful solutions out there, but if you’re relying on the digital equivalent of foot traffic for discoverability, it might as well not exist. And if an API solution can’t be found, then someone else is going to reinvent it.
+ + + +On this sponsored episode, we chat with SmartBear API Technical Evangelist Frank Kilcommins about the growing challenges of API visibility and how to outsmart the invisibility trap with the right development strategies and tools.
+ + + +Episode notes:
+ + + +Kilcommins suggests you can get better visibility for your APIs with SmartBear’s new free API exploration tool.
+ + + +Open specifications like the Open API Initiative help make your endpoints easier to understand—both by humans and computers.
+ + + +Connect with Frank Kilcommins on Twitter and LinkedIn.
+ + + +Congrats to Stack Overflow user WorstCase, who asked five well-received questions on five separate days and earned themselves a shiny new Curious badge.
+The post Visible APIs get reused, not reinvented (Ep. 549) appeared first on Stack Overflow Blog.
+]]>The post Developers think AI assistants will be everywhere, but aren’t sure how to feel about it (Ep. 548) appeared first on Stack Overflow Blog.
+]]>This week we sit down with some fellow Stackers, Erin Yepis and Joy Cicman Liuzzo, to discuss the results of our latest Pulse Survey. Developers told us what emergent technology they expect to become mainstream, what they think is a fad that will pass, and how they feel about everything from AI to open source to blockchain.
+ + + +You can dive deeper into the research, including some lovely matrix charts, on our blog.
+ + + +Erin has also explored tag trends among our most loved languages and job insights from our community.
+ + + +Learn more about Joy on her LinkedIn.
+ + + +Thanks to our Lifeboat badge winner of the week, russbishop, for helping to answer the question: Where is the app content folder in the simulator of Xcode?
+ + + + + + + + +The post Developers think AI assistants will be everywhere, but aren’t sure how to feel about it (Ep. 548) appeared first on Stack Overflow Blog.
+]]>The post Building an API is half the battle: Q&A with Marco Palladino from Kong appeared first on Stack Overflow Blog.
+]]>We spoke with Marco Palladino, CTO and co-founder at Kong, all about APIs past and future and what engineers need to do once their API endpoint has been built.
+ + + +We’ve edited this conversation for clarity. This Q&A is also available as a video.
+ + + +Ryan Donovan: How did you get involved in the world of APIs?
+ + + +Marco Palladino: When we started our journey with APIs, we started with an idea in 2009 to build an API marketplace like Amazon but for APIs. We imagined a world where APIs would be the main foundation block for every application that anybody creates in the world. In 2009, that was just about to get started, so people were asking us, “What is an API?” We built our first business called Mashape, which was an API marketplace. If the world runs on APIs, then we need to have a marketplace for APIs. That product was the beginning of the Kong journey, because the Mashape marketplace didn’t work very well for us but the technology we built was very good in this new microservices and API world. We built it for ourselves and we open sourced it, so we extracted it and we pivoted into Kong as part of a transition we made in 2015.
+ + + +RD: That’s very much ahead of the game. You must be excited about the innovations in Jamstack these days.
+ + + +MP: Yeah, I mean there’s innovations that are happening pretty much across the board. Now in my space, which is the API space, what we’re looking at is APIs as fundamentally running pretty much every digital experience we can think of. 83% of the world internet traffic today runs on APIs. APIs are powering everything, as we all know, in our daily lives, in every category and every industry that we normally interact with.
+ + + +RD: What makes a good API?
+ + + +MP: Well we should think of APIs as user interfaces, except the user is a developer. Good APIs are easy to use, easy to understand, and not convoluted, and fundamentally they provide a nice abstraction on top of the service or the data that we want to access through the APIs. The ones that are bad are the ones don’t have any of these properties. They’re ugly, they’re hard to use, they’re inconsistent. There is no documentation whatsoever, therefore, it’s hard to consume them and hard to test them and debug them.
+ + + +Ultimately, the criteria that separates the good APIs from the bad APIs is the consumption. At the end of the day, APIs are as valuable as the consumption that we’re able to create on those APIs. And if these APIs are not being consumed, it doesn’t matter how good the service is or the data is that’s behind that API. If the API is not being consumed, that API, quite frankly, is useless.
+ + + +RD: Do you have an opinion on the various architecture styles or frameworks like the REST versus GraphQL, or even SOAP from back in the day?
+ + + +MP: It’s funny to see the evolution of API protocols over time. We started with SOAP, but some in the audience may think we started earlier than that with CORBA. APIs as a concept have permeated our industry since forever.
+ + + +Now with SOAP APIs, we have the emergence of web service for the first time. SOAP APIs were notoriously hard to use, hard to consume, very verbose, and so when mobile came out in 2007-2008, everybody needed to create mobile applications. It turns out that consuming RESTful APIs is a much easier endeavor, and we can leverage most of our existing knowledge and clients to be able to do that so we don’t need to have specialized SOAP clients to consume those APIs.
+ + + +The problem is, as the number of APIs increases over time, it becomes very computationally and network expensive to make lots of requests to all the RESTful APIs that we have. So we started to see new patterns emerge, like GraphQL, which allow us to essentially get multiple responses for multiple APIs in one request and one response. That allows us to save in bandwidth which is very important, especially for mobile, and also improve the latency because we’re not sending 50 requests across all the APIs but only one request. In GraphQL, the gateway is going to be responsible for aggregating all those other responses.
+ + + +GraphQL is obviously one of those trends, but we’re seeing a lot more. Internally especially we’re seeing adoption of GRPC, where we want to use faster protocols that do not require computationally intensive serialization and deserialization in JSON. We’re seeing events being used as a way to create asynchronous microservices by propagating state changes in the data, not via a service-to-service synchronous requests, but an asynchronous event that we can store in a log collector like Kafka. We’re seeing that APIs were SOAP only for a very long time, then REST came in, and then now it is many different protocols depending on the use case and the requirements that you have.
+ + + +RD: When we’re talking about a large number of APIs, we’re usually talking about microservices. How do gateways, service meshes, and other architecture-level applications help manage microservice overload?
+ + + +MP: Building an API is half of the job. Once we have an API, we need to expose the API and govern how we want these APIs to be consumed, either internally or externally. There’s lots of controls that we have to build in the API infrastructure that allow us to manage access to or revoke access, monitor and capture analytics, document the API, and create an onboarding flow for the API. All of these complimentary use cases are critical for that API to be successful. Having an API sitting somewhere does not mean that API will be successful. This is very important at the edge where we want to expose our API to partners, to a developer ecosystem, to mobile applications.
+ + + +We want to have that whole product journey to the API to be very nice. APIs are products in a way, right? So we have to treat them with the same lifecycle that we treat every other product. How do we version them? How do we decommission them? How do we make them better? API gateways are great at this. API management is a function that allows us to productize an API, either externally or internally, and it allows us to create all these flows and highways to the consumption of the API. Now some of these APIs are going to be consumed internally within the applications themselves—so not across different applications, but within the application itself. There we don’t need to have this higher level management of the API, but what we need is a lower level that’s faster, lower level network management of the API, and that’s where service mesh comes in.
+ + + +With service mesh, we can reduce and remove that extra hop in the network that we would have by having a centralized ingress. We can remove that and go from service to service via a sidecar model in such a way that we make that performance much quicker because there is less networking hops we need to do, as well as it allows us for a more fine grain, lower level management of the underlying networking. This allows us to implement zero trust. It allows us to implement observability. It allows us to implement across data centers, across cloud failovers. If you experience problems in one cloud, we can automatically redirect to the other cloud. Now the reality is we need both. We need to have a service mesh to create this underlying network overlay that’s secure, that’s reliable, that’s observable, and then some of these APIs we want to expose at the edge or to another team or another application. That’s when API management comes into the picture to provide all those other capabilities. So the way I see it, these are complementary technologies.
+ + + +RD: What’s the security risk with lots of APIs?
+ + + +MP: Yeah, as a matter of fact, APIs are the biggest attack vector for pretty much every product that anybody is creating these days. Every product runs on top of those APIs, so APIs become a great source of problems if we do not secure them properly. Security means many things in the world of APIs. Security means securing the protocol and the underlying transport, so we want everything to have an identity and we want everything to be encrypted over a secure HTTPS connection in the case of RESTful APIs.
+ + + +We want to secure access to the API, so we want to make sure that we can create tiers of access for those APIs. We can assign clients and consumers to these tiers in such a way that we can control who consumes the APIs, but we can also then apply specific rules to a specific tier of consumers, such as, “This type of consumer can make x number of requests per second, but this other tier cannot.” There is a third level of security where we are looking at all the traffic that anybody’s making through our APIs and trying to identify patterns that are suspicious, for example, a developer trying to send random fields to an API to see if it breaks or not. Every attacker is going to be exploring and using APIs in ways that were not intended in such a way that they can find a vulnerability. Being able to detect these types of traffic patterns becomes very important to identify suspicious behavior.
+ + + +RD: What’s the most work you’ve seen a single API do? (the largest number/volume of processes behind it)
+ + + +MP So I’ve seen it all. There’s different types of APIs. There are APIs that are high frequency so there’s lots of value to those APIs, but fundamentally each response is not as valuable so we can afford to lose some of that traffic because it doesn’t really matter. For example, I’m sure that Twitter has lots of API requests whenever somebody wants to open a tweet or send a new tweet. It’s not a big deal if somebody cannot see a tweet; they can just retry. That is high volume but low value for each transaction.
+ + + +Then there are low volume but high value transactions, for example, when we send a tax return using one of those tax return services. We are never going to use that app and that service ever throughout the year but that one time that we’re going to be submitting our report, and that request happens once a year for each user but it’s very high value. So in my experience working with enterprise organizations and customers, Kong today is the most adopted API gateway in the world in the open-source community, but we also work with great enterprise organizations around the world that are building their API infrastructure on our technology. And I’m seeing all of these use cases so it’s very hard to pinpoint a specific one, but I’ve seen responses of gigabytes of data. So you make one request, you get gigs back, you get this huge response back. I’ve seen APIs taking days to be processed because those APIs probably should have been replaced with a job queue system. There’s pretty much everything out there.
+ + + +RD: For those high-value APIs, how do you ensure reliability without sort of duplicating effort?
+ + + +MP It’s very important to provide the right API infrastructure. This is why building an API is only half of the job. The other half is to make sure that these APIs are reliable. How do you make them reliable and secure? Well, we need to build that for every API that we have. And there is a series of things that have to happen to make sure that APIs are reliable, but first and foremost, reliability intended as security that has to be in place. Reliability intended as low latency and performance, we need to be able to trace the full stack of our requests to determine where potential bottlenecks could be located in such a way that we can fix them. And then there is reliability intended as being able to measure the API response status codes and response parameters in such a way that we can detect those types of anomalies and then act upon them. For high-value APIs that are low frequency, we’re working with customers where every 500 error is an open investigation that may take two or three weeks to be resolved, because they cannot lose any API request because it would create harm in their reputation and to the final end user. There are different levels of reliability that we want to achieve.
+ + + +Being able to also replicate our infrastructure across multiple clouds and multiple regions in such a way that we can tolerate unpredictable failures in the underlying infrastructure becomes very important. When we have lots of APIs, it’s very hard to think of these problems on an ad hoc basis for each one of these APIs and it becomes much easier to provide this reliable infrastructure for APIs to the whole organization in such a way that we can cater to everything that’s creating APIs and not just a subset of it.
+ + + +RD: In the next five to ten years, how will the ways that software services talk to each other change?
+ + + +MP I am speaking with customers that are telling me in the next five years they’re going to be creating more APIs in the organization than all the APIs they’ve created up until now. So what we’re going to be seeing in the next ten years is an incredible amount of scale. And scale is both exciting and frightening. Scale is exciting because it allows us to build faster and better, and this is why we’re adopting APIs. APIs allow us to turn every product and every silo into a platform. There is lots of value in that because we can build products faster on top of that, we can create ecosystems that are much more efficient, like partner ecosystem across the globe. There is lots of business value in that scale that we’re going to be creating, but there is also a requirement to have the right infrastructure in place so that that scale can be enabled in the first place. If we are not making the application teams that are building all of these APIs extremely productive whenever they ship a new API, then the application teams are going to be worrying about all these complementary concerns that they shouldn’t be worrying about. That’s not their job. So it’s very important that as we prepare for this type of scale we make sure that the application teams are builders of APIs but not builders of infrastructure. We want them to be consumers of infrastructure and builders of APIs.
+ + + +RD: Was there anything else you wanted to touch on before we sign off?
+ + + +MP No, this has been a fantastic conversation. APIs are fundamentally changing and shifting the way we think of software. The way I see it, APIs are providing us the opportunity to create an assembly line of software where you pick and choose different pieces like an assembly line, and put them together to ship new applications in a better way, in a faster way. They are fundamentally changing how we are building software in the digital world. So thinking about APIs really is thinking about the future of the business, because without an API vision there is not going to be a business vision that is going to be successful, because that business vision has to rely on an API to be successful. So it’s becoming very strategic for every organization these days.
+The post Building an API is half the battle: Q&A with Marco Palladino from Kong appeared first on Stack Overflow Blog.
+]]>The post The Overflow #168: Other words for technical debt appeared first on Stack Overflow Blog.
+]]>Why governments need open source more than ever stackoverflow.blog
We face larger-than-life challenges in our world. Maybe open source’s wisdom of the crowds can help solve them.
Stop saying “technical debt” stackoverflow.blog
Everyone who says “tech debt” assumes they know what we’re all talking about, but their individual pictures differ quite a bit.
Announcing two new Collectives
on Stack Overflow: R Language and CI/CD stackoverflow.com
Collectives have expanded to include areas of practice. Learn more and find out how to join the R Language and CI/CD Collectives today.
How Intuit democratizes AI development across teams through reusability stackoverflow.blog
They found success in a blended approach to product development—a marriage of the skills and expertise of data, AI, analytics, and software engineering teams—to build a platform powered by componentized AI.
The open-source game engine you’ve been waiting for: Godot (Ep. 542) stackoverflow.blog
Juan Linietsky, cofounder and lead developer of the Godot Engine, joins the home team for a conversation about what led him to create an open-source game engine, how open source is shaping game development, and the well-worn path from playing video games to learning to build them.
Integrate videos into your product within minutes, not months promotion
What’s the best way to handle and deliver video on your website, app, or software? We take care of all aspects of the video pipeline. Quickly encode, securely host, and reliably deliver videos worldwide via our global CDN. Don’t waste time and endure the hassle of integrating multiple providers.
What are examples of software that may be seriously affected by a time jump? serverfault.com
In case you need to write an OS for a time machine.
Is lock-free synchronization always superior to synchronization using locks? stackoverflow.com
“There’s only one rule: when in doubt, use a lock.”
Is email scraping still a thing for spammers? security.stackexchange.com
The classics never die.
How to react to a student’s panic attack in an oral exam? academia.stackexchange.com
Lots of thoughtful answers here, but not among them: having your own panic attack to make them feel less alone.
A guide to accessible form validation www.smashingmagazine.com
Accessibility goes beyond complying with standards. You never want your users to get stuck!
The future of touch: Researchers uncover physical limitation in haptic holography techxplore.com
There are limits to the virtual world, but maybe by knowing them, we can overcome them.
Writing an effective tech spec yougotthis.io
Figuring out what you’re going to build and how is just as important as building itself!
Why is building a UI in Rust so hard? www.warp.dev
Rust is a very loved, speedy language. What are the cons?
If you’re curious about our other products: How to get started with Stack Overflow for Teams.
+The post The Overflow #168: Other words for technical debt appeared first on Stack Overflow Blog.
+]]>The post How to position yourself to land the job you want (Ep. 547) appeared first on Stack Overflow Blog.
+]]>The home team talks with Wesley Faulkner, Senior Community Manager at AWS, about what’s going on with this cycle of tech layoffs, how to position yourself for success on the job market, and why it’s worth interviewing for jobs you might not want. Plus: The two things you should do as soon as you get an offer.
+ + + +Episode notes:
+ + + +Per one count, more than 280,000 people were laid off from tech jobs in 2022 and the first two months of 2023.
+ + + +What do layoffs have in common with farting at a party? Both are a bad look if you’re the only one doing it.
+ + + +ICYMI: On a recent episode, we talked about how these layoffs are reshaping the job market and where to find software engineering roles outside of tech.
+ + + +Just laid off, or worried you might be? Cohost Ryan Donovan has some advice.
+ + + +Connect with Wesley on LinkedIn.
+ + + + +The post How to position yourself to land the job you want (Ep. 547) appeared first on Stack Overflow Blog.
+]]>The post After the buzz fades: What our data tells us about emerging technology sentiment appeared first on Stack Overflow Blog.
+]]>We wanted to see how developers feel about the tech making headlines, so our latest pulse survey asked developers to think about nascent trends in technology and tell us how they felt about them. Despite many of these technologies having been around for quite some time, the conversations about them and their applications are evergreen and always evolving. With AI-assisted technologies in the news, this survey’s aim was to get a baseline for perceived utility and impact of a range of buzzworthy technologies in order to better understand the overall ecosystem.
+ + + +The survey results’ matrix below shows four quadrants of sentiment where technologies are grouped into areas of “Positive-Emergent”, “Positive-Proven”, “Negative-Proven”, “Negative-Emergent” and in the opposing “Negative-Emergent” and “Positive-Proven” quadrants is where this analysis has placed a lot of focus due to the strength of sentiment shown in this survey’s results. Open source is clearly positioned as the north star to all other technologies, lighting the way to the chosen land of future technology prosperity.
+ + + +Technologies such as blockchain or AI may dominate tech media headlines, but are they truly trusted in the eyes of developers and technologists? On a scale of zero (Experimental) to 10 (Proven), the top proven technologies by mean score are open source with 6.9, cloud computing with 6.5, and machine learning with 5.9. The lowest scoring were quantum computing with 3.7, nanotechnology with 4.5, and low code/no code with 4.6.
+ + + +| Technology | Proven mean |
| Open source | 6.9 |
| Cloud computing | 6.5 |
| Machine learning | 5.9 |
| Robotics | 5.7 |
| Internet of Things | 5.7 |
| 3D printing | 5.6 |
| Serverless computing | 5.5 |
| Natural Language Processing | 5.5 |
| Biometrics | 5.4 |
| Rapid prototyping tools | 5.3 |
| AI-assisted technologies | 5.1 |
| Real-time 3D | 4.9 |
| Sustainable technologies | 4.9 |
| Privacy preserving technologies | 4.9 |
| Augmented/Virtual reality | 4.8 |
| Vector databases | 4.8 |
| Blockchain | 4.8 |
| InnerSource approaches | 4.7 |
| Low code/no code | 4.6 |
| Nanotechnology | 4.5 |
| Quantum computing | 3.7 |
By grouping frequency of scores into three sentiments and looking specifically at a handful of interesting standouts elsewhere in the survey, a pattern emerges: those without strong feelings about whether a specific technology is definitely experimental or proven take a larger share of the responses for those technologies that also have larger proportions of emergent ratings.
+ + + +One hypothesis for this pattern is that technologies considered experimental may also be technologies that developers have less experience with and therefore absence of strong feelings. Those neutral feelings appear to be correlated with the question asked in the survey about whether respondents agreed on which technology would never be widely used in the future: blockchain and low code/no code both received more than 10% making them the top two choices in that category. It makes sense that you may grade a technology lower on the experimental-to-proven scale if you don’t believe it will be used much in the future.
+ + + +Conversely and against expectations, those technologies that scored high proven scores were not necessarily the same that were chosen from our list of technologies as those that developers believed would be widely used in the future, however they were very close with one main exception. AI comes in at the top of the list by a large margin, but our three top proven selections (open source, machine learning, cloud computing) follow after. Technologists are willing to concede that AI isn’t a proven technology as of today but seem to be very positive about the direction it’s going.
+ + + +It’s one thing to believe a technology has a prosperous future, it’s another to believe a technology deserves a prosperous future. Alongside the emergent sentiment, respondents also scored the same technologies on a zero (Negative Impact) to 10 (Positive Impact) scale for impact on the world. The top positive mean scoring technologies were open source with 7.2, sustainable technologies with 6.6 and machine learning with 6.5; the top negative mean scoring technologies were low code/no code, InnerSource, and blockchain all with 5.3. Seeing low code/no code and blockchain score so low here makes sense because both could be associated with questionable job security in certain developer careers; however it’s surprising that AI is not there with them on the negative end of the spectrum. AI-assisted technology had an above average mean score for positive impact (6.2) and the percent positive score is not that far off from those machine learning and cloud computing (28% vs. 33% or 32%).
+ + + +| Technology | Positive Mean |
| Open source | 7.2 |
| Sustainable technologies | 6.5 |
| Machine learning | 6.5 |
| Cloud computing | 6.4 |
| 3D printing | 6.4 |
| Robotics | 6.4 |
| Privacy preserving technologies | 6.4 |
| Natural Language Processing | 6.4 |
| Nanotechnology | 6.2 |
| AI-assisted technologies | 6.2 |
| Quantum computing | 6.2 |
| Internet of Things | 6.1 |
| Rapid prototyping tools | 6.0 |
| Serverless computing | 6.0 |
| Biometrics | 5.9 |
| Real-time 3D | 5.7 |
| Augmented/Virtual reality | 5.6 |
| Vector databases | 5.5 |
| Blockchain | 5.3 |
| InnerSource approaches | 5.3 |
| Low code/no code | 5.3 |
Possibly what we are seeing here as far as why developers would not rate AI more negatively than technologies like low code/no code or blockchain but do give it a higher emergent score is that they understand the technology better than a typical journalist or think tank analyst. AI-assisted tech is the second highest chosen technology on the list for wanting more hands-on training among respondents, just below machine learning. Developers understand the distinction between media buzz around AI replacing humans in well-paying jobs and the possibility of humans in better quality jobs when AI and machine learning technologies mature. Low code/no code for the same reason probably doesn’t deserve to be rated so low, but it’s clear that developers are not interested in learning more about it.
+ + + +Open source software is the overall choice for most positive and most proven scores in sentiment compared to the set of technologies we polled our users about. That’s a win any way you slice it. Open source is not new, but this survey is and one has to consider that open source was not always on top. The top tags for open source for non-commercially backed technologies on Stack Overflow are Python, Java, and Ruby, while the larger network has many sites dedicated to specific open source technologies: Ask Ubuntu, Unix & Linux, Blender, Drupal, Raspberry Pi, and more.
+ + + +How did open source defy the assumed necessity of paid support in order to become regarded as the proven technology it is today? A big part of the history of open source that overlaps with the user base for our survey is the love of collaboration: open source and Stack Overflow’s public platform and Stack Overflow for Teams product don’t exist without it!
+ + + +Collaboration isn’t just an unpaid internship type of gig, it’s important at the office. In our last pulse survey about jobs, almost one in four developers say collaboration is what retains employees and there is reason to believe that spirit of collaboration comes from experience with open source; in the same survey, 27% of developers said contributing to open source at work made a job more appealing.
+ + + +Open source isn’t just about collaboration, and neither is the developer experience. Another reason to believe open source has persevered as a proven technology today is that it is a platform for learning. Proprietary software and programming languages are not going to be the first choice for educational institutions with low thresholds for cost, and definitely not for self-taught programmers completing online courses. Learning is the backbone of coding, something we can see on Stack Overflow, as well. Python, an open-source licensed programming language, has been one of the top tags for questions as of late and all of those questions being answered equate to tangible learnings. New tech talent going through traditional education paths or self-moderated online learning modules are coming into the workforce with skills in open-source tech and sometimes through open-source platforms. From our 2022 Developer Survey, Python is almost tied as the most popular language for people learning to code. Open-source removes friction in the learning process for developers, and what’s not to love about that.
+ + + +Perhaps one of the biggest contributors to the growth and goodwill behind any of the technologies listed here is salary. Over half of respondents in our December survey agreed a better salary is still the largest motivator when considering a new opportunity (54%). The potential to grow one’s personal capital by learning and using open source most certainly is a large contributor to the positive and proven sentiment we see in this survey. Software engineering is projected to have the largest average growth in salary in the next 10 years by the BLS. This is likely due to the large return on the relatively low investment of time when it comes to entering the developer industry.
+ + + +One of the main takeaways from our last developer survey found that blockchain developers garnered a comparable salary to people managers but with less experience. Given the sentiment scores in this survey, it’s very interesting to watch the progression of blockchain over time. While small, question share on Stack Overflow almost tripled from 2021 to 2022 (0.05% to 0.14%) despite nearly a quarter of respondents to our Web3 pulse survey believing blockchain was all hype or a scam. Post-FTX scandal, it’s clear that most developers do not feel blockchain is positive or proven, however there is still desire to learn as more respondents want training with blockchain than cloud computing. There’s a reason to believe in the direct positive impact of a given technology when it pays the bills.
+ + + +AI-assisted technology should take notes from the way open-source technology has cultivated collaboration, learning, and take-home pay if it wants to make gains in sentiment around positive impact and be regarded as a proven technology. We can see the possibility of this already with machine learning, which overlaps and is a component of AI; machine learning is the third-highest scoring for both proven technologies and positive impact tech. Machine learning is already utilizing open-source programming languages and libraries, and the median salaries of data scientists/machine learning engineers worldwide are mid-range according to the developer survey. The trajectory of machine learning shows that there is a path for AI to become more proven and positive and the core characteristics of open source lay the foundation for AI to achieve that goal.
+ + + +Organizations and business leaders everywhere should heed these lessons. Open source shows that collaboration and learning around emerging tech is key to wider adoption. If you’re part of an organization trying to implement new technology, Stack Overflow for Teams can help by encouraging the healthy cycle of knowledge sharing, collaboration, learning, and ultimately, knowledge reuse. While the topics, technologies, and sentiments discussed in this survey will shift over time, we’re confident that the role of collaboration and learning will not. We look forward to seeing more discussion and more learning take place on our platform in the years to come.
+The post After the buzz fades: What our data tells us about emerging technology sentiment appeared first on Stack Overflow Blog.
+]]>The post From writing code to teaching code (Ep. 546) appeared first on Stack Overflow Blog.
+]]>Writing code that runs without errors—and without all the bugs that only show up when the program runs—is hard enough. But teaching others to write code and understand the underlying concepts takes a deeper understanding. Now imagine doing that for 37 courses.
+ + + +On this sponsored episode of the podcast, Ben and Ryan talk with Bharath Thippireddy, a VIP instructor at Udemy who has taught more than half a million students. We talk about how he went from a humble Java developer to one of Udemy’s top instructors (and a budding movie star!). Along the way, we discuss whether Java or Python is better for beginners and how to balance theory with syntax.
+ + + +Episode notes:
+ + + +Like a lot of today’s content creators, Bharath got his start posting videos on his Youtube channel in 2012.
+ + + +Today, you can find all of Bharath’s courses on his Udemy page.
+ + + +You can find out more about Bharath from his website or connect with him on LinkedIn.
+ + + +Udemy is one of our launch partners for our online course recommendations.
+ + + +Congrats to Lifeboat badge winner desertnaut for their answer to What is the meaning of exclamation and question marks in Jupyter Notebook?.
+ + + + +The post From writing code to teaching code (Ep. 546) appeared first on Stack Overflow Blog.
+]]>The post “Move fast and break things” doesn’t apply to other people’s savings (Ep. 545) appeared first on Stack Overflow Blog.
+]]>Christine Ryu, Engineering Lead at fintech platform Flourish, joins the home team to talk about how technology is transforming finance for everyone from big banks to individual consumers. Christine explains what it’s like to move from Goldman Sachs to a tiny startup, how legacy tech stacks lead to Frankencode, and what an acquisition taught her about build vs. buy and good vs. perfect.
+ + + +Episode notes:
+ + + +Flourish is a fintech platform for registered investment advisers (RIAs) that was recently acquired by MassMutual.
+ + + +After studying computer science at Carnegie Mellon, Christine spent almost 12 years at Goldman Sachs, where she was VP of fixed systematic marketing making, responsible for automating electronic trades of interest-rate products like US Treasury bonds and interest rate swaps.
+ + + +Christine’s time at the world’s second-largest investment bank gave her a healthy wariness of Frankencode, the scourge of legacy stacks everywhere.
+ + + +Find Christine on LinkedIn.
+ + + +Shoutout to Lifeboat badge winner amirali for their answer to I can’t set up JDK on Visual Studio Code.
+ + + + +The post “Move fast and break things” doesn’t apply to other people’s savings (Ep. 545) appeared first on Stack Overflow Blog.
+]]>