Sr. Content Developer at Microsoft, working remotely in PA, TechBash conference organizer, former Microsoft MVP, Husband, Dad and Geek.
141891 stories
·
32 followers

Managing in the age of AI, with former Microsoft leader, executive coach, and author Sabina Nawaz

1 Share
Executive coach and author Sabina Nawaz explores the hidden forces that derail managers — and how to lead with intention — in her book, You’re the Boss: Become the Manager You Want to Be (and Others Need). (GeekWire Photo / Todd Bishop)

This week on the GeekWire Podcast: Executive coach and former Microsoft leader Sabina Nawaz joins the podcast to talk about her new book, You’re the Boss: Become the Manager You Want to Be (and Others Need) — and why she believes pressure, not power, is what truly corrupts leaders.

Management is undergoing a dramatic transformation as AI agents handle more routine work and companies including Microsoft and Amazon reduce their leadership layers, leaving fewer managers responsible for larger teams.

We discuss this thinning layer of middle management, how AI tools are changing the landscape, and why some workers no longer aspire to lead. Nawaz shares tools and tips from the book, including Micro Habits, the power of “blank space,” and how managers can stop micromanaging and start serving as the “container, not the content.”

She also reflects on her time advising Bill Gates and Steve Ballmer — including a memorable moment involving Ballmer, a name badge, and an umlaut — and explains why getting promoted from individual contributor into the management ranks might be the riskiest moment in a person’s career.

Listen below, and continue reading for key takeaways.

AI and the ‘Great Unbossing’: Nawaz challenges the common refrain from managers dealing with layoffs who say they’re “doing more with less.” She says many leaders haven’t yet made the mental shift to treat AI and automation as real resources — instead falling back on a scarcity mindset and personally taking on even more work.

“Is it really doing more with less?” she says. “Because what you’re truly doing is you’re trading human head count for compute power.”

Managing in flatter organizations: Nawaz warns that traditional management approaches won’t survive the current industry transformation. With companies like Amazon and Microsoft cutting management layers while expecting the remaining managers to oversee larger teams, she says the heroic “sole provider” mentality is unsustainable.

“If you manage the old way, you’re going to get insurmountable levels of pressure, and it’s just not going to scale. It’s going to fall apart,” she says.

From hierarchy to collaboration: With fewer management layers, Nawaz says it’s especially important to move past the traditional command-and-control approach. Rather than managers hoarding decision-making authority based on their titles, she advocates for distributing ownership across teams.

“The fulcrum of power and ownership needs to shift from positional to people,” she says. “It needs to shift from people who have the title of manager to all the people who are responsible for the work.”

Pressure, not power, corrupts: Nawaz’s central thesis challenges conventional wisdom about leadership failures. “It is not power that corrupts, but pressure,” she says. “Pressure is the silent corrupter. It affects everyone. It’s everywhere and constant, and it doesn’t just stress us out. It changes how we act.”

Her research shows that the same person can be both “the best boss ever” and “the boss from hell” — depending on how they handle pressure.

Managing that pressure: So how do leaders avoid letting pressure corrupt their actions? Rather than dramatic overhauls, Nawaz suggests tiny, sustainable changes.

Examples include taking three deep breaths before delivering difficult feedback — a simple act that, as she notes in the book, helps regulate emotion and creates space to respond with intention rather than reaction.

She also recommends building what she calls the “shut-up muscle” — holding back and letting others speak first, instead of always being the first voice in the room. In a similar vein, another tip is taking time for “blank space”: two hours of completely unplugged time each week to let solutions emerge naturally.

Subscribe to GeekWire in Apple Podcasts, Spotify, or wherever you listen.

Podcast audio editing by Curt Milton. You’re the Boss, by Sabina Nawaz, is published by Simon & Schuster. It’s also available as an audiobook, read by the author.

Read the whole story
alvinashcraft
4 hours ago
reply
Pennsylvania, USA
Share this story
Delete

Trump’s Tariff Strategy Hits Home First: ‘American Consumers Will Bear the Burden’

1 Share

Trump’s Vietnam trade deal locks in high tariffs. Analysts warn US consumers may face higher costs as trade partners brace for tougher terms.

Read the whole story
alvinashcraft
4 hours ago
reply
Pennsylvania, USA
Share this story
Delete

Will your next user be an AI agent? The future of content delivery with Fabrice Lacroix, founder of Fluid Topics

1 Share
In this podcast, I chat with Fabrice Lacroix, founder of Fluid Topics, about the evolution of technical communication. Fabrice describes the industry's progression from delivering static, monolithic PDFs to using Content Delivery Platforms (CDPs) that provide dynamic, topic-based information directly to users, to then engineering content not just for human consumption, but for AI agents that will use this knowledge to automate complex tasks and workflows.

Read the whole story
alvinashcraft
4 hours ago
reply
Pennsylvania, USA
Share this story
Delete

How to Get Started with Machine Learning

1 Share

Embarking on a journey through the dense forest of machine learning can seem daunting, particularly if you’re standing at the edge, looking at the thick underbrush of algorithms, models, and endless data. But like any formidable journey, the right preparation and tools can simplify the seemingly Herculean task. Reflecting on a recent video I watched of someone documenting their own such journey, I felt there was much to glean and share about this approach to diving into machine learning.

The burgeoning machine learning enthusiast in the video started by fortifying their mathematical foundations, a move akin to sharpening your machete before hacking through the dense foliage. He underscored the importance of three pillars: probability and statistics, linear algebra, and calculus. These aren’t just abstract concepts that mathematicians wrestle with but are practical tools that help in understanding data structures, transformations, and eventually, in making predictions based on that data.

This video is from 0xHadyy.

The video discussed several books, but not just any books—specific ones tailored for the machine learning journey. “Mathematics for Machine Learning” was highlighted for linear algebra and calculus due to its approachable yet challenging content. Another recommended read was “Probability and Statistics for Machine Learning,” which seems to offer thorough practice problems and solutions, perfect for those who really want to ensure they grasp the concepts.

Beyond the textbooks, the journey delved deeper into more specialized machine learning literature. Titles such as “Introduction to Statistical Learning,” “Elements of Statistical Learning,” and “Hands-On Machine Learning with Scikit-Learn and TensorFlow” were mentioned as essential reads. The latter blends theory with practice, offering a balanced approach much like picking a path that has both a scenic view and a challenging hike—rewarding yet rigorous.

The practical side of learning was not just confined to reading. The narrator of the video took a hands-on approach by engaging directly with the tools of the trade: Python and its libraries like NumPy, Matplotlib, and Pandas. Utilizing Jupyter notebooks, he experimented with data sets provided by these books, turning theory into tangible practice. This experimentation with data is akin to a pilot testing their plane in various weather conditions to better understand its capabilities and limits.

Moreover, note-taking was another crucial aspect discussed. Using a combination of old-fashioned pen and paper, augmented with modern tools like Obsidian—a note-taking and knowledge management software—proved effective. This method, along with utilizing LaTeX for mathematic formulae, not only organized the learned content but also beautified it, making the learning process more enjoyable and visually engaging.

The journey also explored the myriad facets of machine learning: from understanding the differences between supervised and unsupervised learning to tackling specific problems like regression and classification. Understanding these concepts is fundamental, as they form the backbone of how machine learning algorithms interpret and process data to make predictions or categorize information.

Sharing this knowledge through a public GitHub repository, the video’s narrator extends a hand to fellow learners, which is a reminder of the community and collaboration spirit in the tech world. Learning in isolation can be tough and sometimes unproductive, but sharing progress, notes, and resources can bolster not just your own understanding but also help others on similar paths.

As I watched the video and now reflect on it, the journey through machine learning reminded me of the dedication needed to traverse any complex field. Like any significant expedition, preparation, the right tools, good guidance, and sharing discoveries can make the journey not just manageable but also enriching.

To those beginning or continuing their journey in machine learning, remember, the path might seem thickly wooded and obscure at first, but every step you take, informed by good material and structured practice, clears the thicket a bit more, revealing the vast possibilities that lie beyond.

Read the whole story
alvinashcraft
4 hours ago
reply
Pennsylvania, USA
Share this story
Delete

30 Years of JavaScript: 10 Milestones That Changed the Web

1 Share
JavaScript logo on a 1995 PC

Thirty years ago, Netscape engineer Brendan Eich famously created a new client-side scripting language in just ten days. It was initially called Mocha, but by the end of the year it would be renamed JavaScript. In 1995, nobody could’ve predicted that JavaScript would become the world’s most popular programming language. But that’s exactly what happened.

How did JavaScript become the defining technology of the modern web? In this article, we’ll look at ten milestone moments in JavaScript’s 30-year history. It’s remarkable how much the JavaScript ecosystem — and by extension the web ecosystem — has expanded and transformed during that time.

1. 1995: Adding Interactivity to the Web

The first key moment was, of course, those ten days in May 1995. The idea was to create a Netscape equivalent to Microsoft’s Visual Basic — a web language that was easy for beginner developers, web designers and DIY folks to use. Or as Brendan Eich himself later put it, “there was a need for a language that was approachable, that you could put directly in the web page.”

Putting into the web page, in practical terms, meant using a scripting language to create client-side programs that ran inside the Netscape browser. The name JavaScript was largely a marketing term devised by Netscape and Sun Microsystem executives. But there was a kind of logic to it: JavaScript would be for designing small interactive effects — such as form validation or animated buttons — while Java would be for developing more complex web components.

JavaScript was publicly announced at the end of 1995, as part of Netscape’s beta launch of its Navigator 2.0 browser.

2. 1997: ECMAScript 1.0

Over 1996, early developers and webmasters began to experiment with JavaScript. At first, JavaScript was put to use in fairly trivial ways — scrolling text, silly animations, tricks with colors (fading, rainbow effects, and so on). Eich himself later referred to these types of JS features as “annoyances.”

But by 1997, JavaScript had become a sophisticated language — with new features like Netscape’s layers adding a further dynamic dimension to its capabilities. By this time Microsoft had its own version of JS called JScript; since JavaScript was open source, Microsoft had been free to copy and tweak JS to suit its Internet Explorer browser. Netscape, Microsoft and other companies then agreed to have an impartial specification produced, via a standards body called Ecma International. The first ECMA-262 specification (nick-named ECMAScript) was published in June 1997, giving JavaScript a neutral roadmap.

3. 1999: XMLHttpRequest Debuts

This is where things get really interesting for JavaScript — but curiously it was Microsoft that provided a great technical leap forward, not Netscape.

Internet Explorer 5 quietly introduced a technology called XMLHttpRequest, letting scripts fetch data in the background. It was an API in the form of a JavaScript object, using asynchronous calls to enable pages to update without full refreshes. It was the seed of what would later be called Ajax.

One of the Microsoft engineers responsible for this technology, Alex Hopmann, later explained that they created the technique for use in a web version of Outlook. When it came time to include XMLHttpRequest in IE5, it was added as part of the MSXML library (Microsoft XML Core Services). Hopmman said that’s where the “XML” part of the name comes from — “the thing is mostly about HTTP and doesn’t have any specific tie to XML other than that was the easiest excuse for shipping it so I needed to cram XML into the name,” he wrote.

More than anything else seen in JavaScript programming up till then, XMLHttpRequest pushed the web browser to evolve from document viewer to application platform.

4. 2005: Ajax & jQuery in Web 2.0

After the dot-com period, browser innovation atrophied — which also meant there wasn’t a lot of innovation happening in JavaScript either (although shoutout to JSON — JavaScript Object Notation — which Douglas Crockford invented in 2001). However, when Web 2.0 began around 2004, things picked up again.

Notably, XMLHttpRequest got a rebrand. UX architect Jesse James Garrett coined the term Ajax on February 18, 2005 (it stood for “asynchronous JavaScript and XML”). One month later, Google Maps showcased its potential. Ajax became perhaps the trendiest Web 2.0 feature — although shiny, rounded corners gave it a run for its money.

In August 2005, developer John Resig began what would become the most popular — and durable — JavaScript library of them all: jQuery. When he released it in January 2006, he promoted it as “new wave JavaScript.” Basically, it smoothed away DOM quirks, giving developers a single, chainable API.

5. 2009: Node.js Escapes the Browser

At JSConf EU on 27 May 2009, Ryan Dahl unveiled Node.js, marrying Chrome’s V8 engine to an event-loop server model. Suddenly JavaScript could handle the backend as well as the UI.

As a result of Node.js, the catchphrase “JavaScript everywhere” became common. The analysis firm Redmonk used the term in a July 2010 blog post, adding that JavaScript was now “the lingua franca of the cloud.” Certainly startups loved the single-language stack concept; and enterprises soon adopted it too.

The phrase caught on — “Run JavaScript Everywhere” is currently emblazoned across the project’s homepage.

6. 2014: npm Expansion

As the JavaScript ecosystem broadened to include the backend as well as the frontend, so the number of libraries and JS packages expanded too.

Npm was created in 2010 as a registry for JavaScript projects. By the time npm, Inc. was formed in 2014, commercializing the registry, the number of modules had ballooned from 6,000 in early 2012 to 50,000 packages. This was helped by npm’s easy install command, which encouraged a culture of ultra-small modules.

The rise of npm meant that developers moved from copy-pasting scripts to composing applications out of many tiny JS packages. That made code reuse easier, although it also added security and reliability risks in the dependency chain.

7. 2015: ES6 Modernises the Language

The long-awaited ECMAScript 2015 (ES6) aligned JavaScript with modern programming tastes. Indeed, the official specification acknowledged that JavaScript was now a “fully featured general propose programming language.” Here’s how the spec put it:

“ECMAScript usage has moved beyond simple scripting and it is now used for the full spectrum of programming tasks in many different environments and scales. As the usage of ECMAScript has expanded, so has the features and facilities it provides.”

ECMAScript 2015 was not just the largest-ever update to the language, but also added “a reliable process for annual updates that have brought a succession of improvements, large and small,” as The New Stack’s Mary Branscombe put it last year.

8. 2016: React and the Component Revolution

In Stack Overflow’s 2016 developer survey, React was listed as the top “trending tech” of that year (the previous year, React hadn’t even been mentioned in the report).

There’s no doubt that React was a revolutionary change to JavaScript development. When it was initially released in 2013 by Facebook, it gave developers two “virtual” copies of the DOM (a before and after for each interaction), from which you then run a “diffing” process to establish what exactly has changed. React then applies those changes to the actual DOM — meaning only a portion of the DOM is changed, with the rest of it staying as-is. That, in turn, means that only a portion of the webpage needs to be re-rendered for the end user. Facebook developer Christopher Chedeau compared React to “version control for the DOM.”

One of the other important concepts behind React was that it wasn’t template-based, like previous popular frameworks (such as Ruby on Rails and Django). As Facebook’s Pete Hunt said in 2013, “React approaches building user interfaces differently by breaking them into components [which] means React uses a real, full-featured programming language to render views.”

React was in full flow by 2016, but it was also starting to attract critics — whose main complaints were that React apps or pages were bloated with JavaScript code, too slow, and too complicated (especially in regards to state management).

9. 2019: TypeScript Breakthrough

RedMonk’s June 2019 language rankings placed TypeScript tenth — the first new entrant to the top 10 in five years and the first time TypeScript had broken into the top ten.

What TypeScript — a superset of JavaScript — brought to the table was static typing, IDE autocompletion, refactor-friendly tooling, and more. These features helped convince large enterprise teams that JavaScript could scale to millions of lines.

Part of the reason for TypeScript’s growing popularity from 2019 was its support by the main JavaScript frameworks. TypeScript integrates seamlessly with React, it is the primary language of Angular, and it is integrated with Vue.js. Plus, it is supported by server-side JS platforms like Deno (which has always had TypeScript support) and Node.js (which added it in March this year).

In Redmonk’s most recent rankings, for January 2025, TypeScript is number 6. So it continues to gain influence in the JS ecosystem.

10. 2022: WebAssembly and the Edge

WebAssembly became a W3C Recommendation in December 2019, but the developer inflection point came when Cloudflare open-sourced its workerd JavaScript/Wasm runtime in September 2022. JavaScript now commonly runs in datacenters worldwide, side-by-side with Wasm modules.

Practically speaking, this means that JavaScript is now being used on the network edge and is often teamed with WebAssembly for compute-heavy tasks — a glimpse, perhaps, of a polyglot future for programming (using multiple programming languages within a single project).

You might ask, wasn’t the original point of WebAssembly to compile other languages so that developers can use them in the browser via JavaScript? Yes indeed, but that is changing. As Fastly’s Guy Bedford told Mary Branscombe in April 2023, “WebAssembly has all these benefits which apply in all the different environments where it can be deployed, because of its security properties and its performance properties and its portability.” In other words, Wasm by itself has many benefits — particularly at the edge — and so bringing JavaScript into its ecosystem is worthwhile for certain projects.

What’s Next?

Will JavaScript even last another 30 years, in an era when AI might make programming itself obsolete? Nobody can answer that right now, but we do know that the web development community is starting to kick back against the complexity of the modern JavaScript ecosystem. As my colleague Alex T. Williams wrote in a post published earlier today, React in particular is being challenged. “Modern browsers are more capable, developers are more discerning, and the jig is almost up,” he noted.

So perhaps it’s time for a return to simplicity in the world of JavaScript. Regardless, let’s celebrate three decades of wide-ranging innovation for the web’s premier programming language. Thanks Brendan Eich for those 10 hectic days in 1995, and here’s to 30 more years!

The post 30 Years of JavaScript: 10 Milestones That Changed the Web appeared first on The New Stack.

Read the whole story
alvinashcraft
10 hours ago
reply
Pennsylvania, USA
Share this story
Delete

Blog: A Minute from the Moderators

1 Share

Hello Hachydermia!

It’s been a while since we had one of these, and we thank you for your patience. We have more posts queued up on additional topics, but as promised we’ve been handling a sign up wave so we wanted to take time to explain what we’re seeing and how we’re working on it.

As always: processes grow over time, and moderation decisions are appealable. In cases like account applications, especially with regard to verifying identity, we won’t typically accept an appeal via the Appeal button unless we explicitly request an appeal that way. When that happens, the email that we send you will explain how to appeal that type of decision. We’ll get into appeals in a moment, but first we want to explain a concept called “inauthentic activity”.

Inauthentic Activity

Inauthentic activity is a term that you may hear in moderation in a variety of contexts. To be clear about what we mean when using the term in this post:

Inauthentic activity is any activity that intends to mislead.

It is important to understand this concept, because like all things inauthentic activity has a spectrum. The most extreme cases of inauthentic activity are activities like: harassment, stalking, and so forth. However, there are less extreme forms of inauthentic activity such as fake accounts which are created to post spamming links or text.

Case in point: Nicole, Fediverse Chick

Many on the Fediverse have encountered inauthentic account creation already. A notable example of this type of activity involved a wave of nearly identical accounts across the Fediverse that is likely familiar to all: Nicole, the Fediverse Chick. These accounts typically shared the same display name (“Nicole”) and a nearly identical profile bio. “Nicole” accounts engaged in mass direct messaging, and often introduced themselves in a uniform, scripted way.

Though each account had a unique handle (evading simple filters), they functioned as a coordinated spam campaign. The accounts were not genuinely attempting to represent an individual named “Nicole”, they were created to distribute spam making them a clear case of inauthentic account creation. There are also numerous posts and analysis on the Fediverse regarding elements that indicated a potential targeted harassment campaign, compounding the nature of the activity.

What Hachyderm is seeing

So what are we seeing right now? The primary form of inauthentic account creation attempts we’re seeing on Hachyderm specifically are accounts that are created with the intent to post spam links and/or text. Most of the spam is what we’ll loosely call “relatively benign”. By that we mean they mostly do not appear to be attempts to phish, post traumatic or other forms of harmful content, and so forth.

While none of these types of spam accounts are new, the main change we’re seeing now is that more and more of the account creators seem to be using automation to generate “plausible reasons to join”. While there are more than a fair few that we suspect (or have enough text that we can confirm) are using AI text generation tools to “write a human sounding reason to join an instance”, simple scripting can also accomplish the same end. This basically means that historically it was more straightforward to determine if an account was a “bot or not” because, candidly, most bots prima facie looked like bots. Now that is no longer the case, so we’re continuing to improve our processes to adapt to this new reality.

How Hachyderm is currently handling applications

Right now we’re trying to find the right balance between reasonable friction to reduce inauthentic activity, while still allowing a smooth onboarding experience for new Hachydermians. We know this will introduce more friction than was present in the past, but we’ll continue to re-evaluate our decisions as different inauthentic activity campaigns occur, and we welcome your feedback on ways we could make this easier.

To help future Hachydermians and to provide better transparency, this post is to explain and set expectations on the process, its limitations, and how you can help make the process faster and smoother.

How we’re using the Mastodon tools

It’s important to understand how the tooling works to then understand how pending applications can be actioned. Right now, it is not possible to directly message a pending account on Hachyderm via Mastodon’s platform tooling while the account application is still in a “pending” state. That means there are two ways to try to contact account applicants:

  1. Attempt to contact the applicant via the email on the account application
  2. Still try to contact the applicant in-platform

While there are situations where we would try to reach someone via email, we generally prefer to do so via Mastodon. This is doubly true for cases of identity verification. Because it’s easy to create new email addresses—and many people use unique addresses for different services as a security measure—email alone isn’t a reliable way to determine whether an account is inauthentic

That means that we try to find alternative ways to contact applicants where we can. There are two things we are doing:

  • If an applicant says they are migrating from a different account or Fediverse instance, we message that account to verify their identity. We will only do this by sending a DM (“mentions-only message”) from the official hachyderm@hachyderm.io account.
  • If we need to contact the account holder for a different reason, we may need to “Approve” the account to get it out of “Pending” state, and then take a moderation action, such as a ”Freeze” or “Suspend”.

This process can feel confusing—particularly when an approval is quickly followed by a freeze or suspension. We handle it this way because suspensions and freezes can be appealed and reversed, whereas application rejections are final and can’t be undone. Until we have better processes or tools to manage this more cleanly, we’ll continue approving and then freezing / suspending suspected inauthentic accounts to leave room for correction if we’ve made an error.

How applicants and Hachydermians can help

For applicants

Writing at least a sentence makes it easier to determine if an account is a bot or not. You don’t need to write an essay, but one word reasons don’t really help the “bot or not” assessment. If a Hachydermian has offered to vouch for you, please include their handle as well.

If you’re moving instances, or are otherwise applying and referencing an existing Fediverse account either on Hachyderm or elsewhere, watch for a DM from our official hachyderm@hachyderm.io account to verify your application.

This information is helpful even if you’re not migrating accounts and are planning to either have two separate accounts or if you plan to eventually delete one. In either case, we can refer to / work with your existing account to do the necessary checks to approve your Hachyderm account application.

This is doubly true for entity accounts (projects, community based conferences, etc.) as we want to make sure that people are not creating third party accounts claiming to be managed by someone who isn’t managing them.

If you miss a DM from us or have otherwise haven’t heard from us in more than a few days, don’t worry! We may put your account temporarily into an “approve-suspend” state until we hear back from you. In this case, the email you receive will include what to do next.

If you believe that we’ve made a mistake, just let us know by sending us an email at admin@hachyderm.io. If you have other issues that you want to get a hold of, please read the “Reporting Issues and Communicating with Moderators” page.

For Hachydermians

If you know that you’ve recommended that someone joins our instance specifically, and you know them well enough to vouch for them, please let them know to include your Hachyderm handle as part of their application. When we receive their application we’ll reach out to you also to confirm that you did in-fact vouch for them. Please know that we do not share any 1:1 communications outside of the moderation team, so if you cannot vouch for them and/or have other information you need to provide, it will be kept in confidence. If you would like to report any other issues or if you need to get a hold of the moderation team, please review the “Reporting Issues and Communicating with Moderators” page.

Read the whole story
alvinashcraft
10 hours ago
reply
Pennsylvania, USA
Share this story
Delete
Next Page of Stories