20 books that all leaders should read in 2020
I’m constantly surprised by the number of leaders and managers who say they’re too busy to read. Leaders who don’t have time to read are leaders who don’t make time to learn.source
I’m constantly surprised by the number of leaders and managers who say they’re too busy to read. Leaders who don’t have time to read are leaders who don’t make time to learn.source
When your team sincerely likes you as a person, they become that more motivated by your ideas, inspired by the mission of your business, more willing to go above-and-beyond, give you honest feedback, and foster a healthier office culture.source
“Leadership is a privilege and it’s time all of us divorce the bad leaders so that the true leaders can rise up.”source
In many aspects of our lives, we rely on those in positions of power to lead us. The role of leaders becomes especially salient in times of uncertainty.source
Discussions on what constitutes a “proper implementation” of test automation often focus on what tool you should use, but that is only one part of the equation. Bas Djikstra details four other things you should consider, how they contribute to the success of your test automation, and what risks are associated with failing to pay proper attention to each of them.source
Code coverage is an important aspect of good engineering practice. Without it, you are flying a bit blind writing tests.
Many teams have existing automated test suites that are not included in a continuous integration program. Maybe the tests take too long to execute, or they are not reliable enough to give accurate results. Here’s how to assess your test suites in terms of value added and time to execute, along with five proven strategies to optimize those suites for CI.source
Business publications are filled with articles about feedback: how important it is for leaders, how leaders can both give and receive it, what happens when leaders don’t get it, and even what to do if someone is not open to feedback they have been given. The focus tends to be on the transfer of data.
What is less explored is how leaders should respond once they receive that data. Through our work coaching thousands of leaders across industries, my colleagues and I have found that, even when leaders make an effort to collect robust feedback, they only access about 25% of its potential value.source
“Emotional intelligence is a must-have soft skill for leaders, and it’s not hard to spot the ones who possess it. People are drawn to high-EQ leaders. It’s apparent in the ways they interact with colleagues. You can even hear it in the words they use every day.”source
GitHub Learning Lab provides hands-on, guided learning experiences to help aspiring and experienced developers learn how to build software, work in teams, and more. We’ve spent some time focusing on the authoring experience, and we can’t wait to show you everything you can do with the improvements we made to Learning Lab.”source
I think the biggest problem that I see that first time managers deal with is they think there's a persona that they should act into. And what I always say is unless you're good enough to go win an Academy Award, don't act like someone you're not. Because human beings have an uncanny ability to smell insincerity.source
The way we look at a our personal and professional lives takes a toll on both. But it doesn’t have to be that way.source
Setting up test cases for code that manage data can be challenging but it's an important skill to reliably test your code. You might have heard of the setup and teardown methods in unittest. In pytest you use fixtures and as you will discover in this article they are actually not that hard to set up. Fixtures have been labelled pytest's killer feature so let's explore them in this article using a practical example.source
“I use Python daily as an integral part of my job as a data scientist. Along the way, I’ve picked up a few useful tricks and tips. Here, I’ve shared some of them in an A-Z format”source
Ada Lovelace, Marie Curie, Jane Goodall, Mae Jemison, and more pioneers who conquered curiosity against tremendous cultural odds.source
In this article we will see how to write HTTP API tests with pytest using YAML files thanks to pytest-play >= 2.0.0 (pytest-play provides support for Selenium, MQTT, SQL and more. See third party pytest-play plugins).
The guest star is Chuck Norris thanks to the public JSON endpoint available at api.chucknorris.io so you will be able to run your test by your own following this example.source
Automation isn't just about the tools that are used to achieve results; it is very much about the hands that perform the automation and, even more so, their minds and capacity to carry out the automation.source
Here’s what you’ll learn in this tutorial:
- You’ll learn about several basic numeric, string, and Boolean types that are built into Python. By the end of this tutorial, you’ll be familiar with what objects of these types look like, and how to represent them.
- You’ll also get an overview of Python’s built-in functions. These are pre-written chunks of code you can call to do useful things. You have already seen the built-in print() function, but there are many others.
The reason this is a survival guide is because after spending my entire career as a software engineer, I was thrown into a team lead role without much warning. I had no idea what I was doing and had very little support. This is the survival guide I wish I had. It documents my experiences as an inexperienced team lead –as an engineer transitioning to a team lead– and my learnings & mistakes along the way. Hopefully this can act as a survival guide for you, too.source
This year we decided to conduct a hackathon at the Bangalore Engineering office. We started with the idea of doing something around diversity and inclusion. We adopted the International Women's Day theme - #BalanceforBetter, as it resonated with Red Hat's Diversity & Inclusion program. The only rule we applied was that we wanted the participating teams to have at least one woman on their team.source
In the last installment, we ended by asking “Once the tester has learned something about the product, how can you focus a tester’s work without over-focusing it?
I provided some examples in Part 4 of this series. Here’s another: scenario testing. The examples I’ll provide here are based on work done by James Bach and Geordie Keitt several years ago. (I’ve helped several other organizations apply this approach much more recently, but they’re less willing to share details.)
The idea is to use scenarios to guide the tester to explore, experiment, and get experience with the product, acting on ideas about real-world use and about how the product might foreseeably be misused.source
Collection pipelines are a programming pattern where you organize some computation as a sequence of operations which compose by taking a collection as output of one operation and feeding it into the next. (Common operations are filter, map, and reduce.) This pattern is common in functional programming, and also in object-oriented languages which have lambdas. This article describes the pattern with several examples of how to form pipelines, both to introduce the pattern to those unfamiliar with it, and to help people understand the core concepts so they can more easily take ideas from one language to another.source
Although managing data in relational database has plenty of benefits, they’re rarely used in day-to-day work with small to medium scale datasets. But why is that? Why do we see an awful lot of data stored in static files in CSV or JSON format, even though they are hard to query and update incrementally?source
“In open source communities, influence operates differently. It can't be bought, inherited, elected through a ballot, bestowed through a job title, or gained through celebrity. In this world, influence must be earned through the merit of the contributions one makes to a team, organization, or community.”source
‘The Last Man Who Knew Everything,’ a new biography of the amiable and enigmatic genius whose ideas powered the atomic bomb.source
When Sherlock Holmes first meets Dr John Watson, he identifies the physician's background at a glance. To many, that moment in Arthur Conan Doyle's A Study in Scarlet (1887) — Holmes's debut — is a smile-worthy flight of fancy. Except it isn't entirely fantastical. One of Conan Doyle's mentors at the University of Edinburgh, UK, where he trained as an ophthalmologist, was the surgeon Joseph Bell. And it's to him that we owe the famed exchange about Afghanistan, as well as much of Holmes's character.source
I thought I'd try something new and provide a link to a short (6:49) video featuring Twitter's Dick Costolo. In this video Dick Costolo explains how to solve the paradox of leadership and the true secret behind the cult of personality-driven success.source
A year ago, all engineers at ShopBack reported directly to the CTO. We had no Engineering Managers (EM), no team leads, and in other words — no structure. Recognising this as a rising issue for a start-up with a 250% year-on-year growth rate, we hired a VP Engineering to put a proper structure in place.
Introducing engineering managers was a paradigm shift he proposed which had an outsized impact on the engineering team.source
How random is random? This is a weird question to ask, but it is one of paramount importance in cases where information security is concerned. Whenever you’re generating random data, strings, or numbers in Python, it’s a good idea to have at least a rough idea of how that data was generated.source
“There’s this idea that, if you do great work at your job, people will (or should!) automatically recognize that work and reward you for it with promotions / increased pay. In practice, it’s often more complicated than that – some kinds of important work are more visible/memorable than others. It’s frustrating to have done something really important and later realize that you didn’t get rewarded for it just because the people making the decision didn’t understand or remember what you did. So I want to talk about a tactic that I and lots of people I work with have used!”source
GitOps lowers the bar for creating self-service versions of common IT (or site reliability engineering, or DevOps) processes. As the bar is lowered, it becomes easier to meet the return in the ROI (return on investment) calculation.source
“Growing teams need managers, and who better to manage a team than someone who is already part of one? While that may be true, picking the right person to become a team manager can be a lot harder than it looks.”source
The primary responsibility of functional leaders is to recruit, develop, and manage people who focus in analytical depth on specific business activities. An enterprise leader’s job is to manage and integrate the collective knowledge of those functional teams to solve important organizational problems.source
“There are around 2,000 billionaires in the world. And by definition, they’re some of the best at time management. They’re bombarded with thousands of emails. They have a thousand things they could do: meet with an employee, schedule a meeting, find a new marketing strategy, work on a product design, etc. How do they choose what’s most important and still effectively build their wealth to $10,000 per day or more?”source
We're several months into the work at the firm, and one very interesting concept has come to the fore: The implementation of preemptive change is about desire. Or, as one senior leader proffered at a recent executive steering committee meeting, "Ya' gotta wanna do it." I love this statement: "Ya' gotta wanna do it!" It's a straightforward way to summarize an otherwise elegant management philosophy -- one that connotes desire, focus, and a commitment to change. In the interest of furthering this theory, let me propose five basic leadership principles we can use to form the backbone of the "Ya' gotta wanna do it" philosophy.source
A short overview of the values to espouse in yourself to be the leader who would inspire you to change and charge to the front. Being a good leader has nothing to do with being in charge, but much more about living some basic values that most will want to emulate.source
Are you striving for even better collaboration with your team? Consider these tips for practicing and improving crucial behaviors.source
Many first-time leaders see their teams devolve into chaos and their effectiveness reduced by unnecessary friction.
Because of their lack of experience, they resort to large, sweeping changes in their attempts to improve the effectiveness of their organizations and fulfill their vision.\
These herculean efforts fail over and over, while the real solution sits ignored in front of them: communicate better.source
“Truly, there is no one way to contribute to an open source project, and to be involved often means more than code slinging. In this article, though, we’re going to focus on the nitty-gritty of contributing a pull request (PR) to someone else’s project on GitHub.”source
When you first started with git, you quickly got up to speed with committing, pushing, pulling, merging, and the like. But then you noticed a gaping hole in your knowledge — how do you find stuff in Git? Can you revert to a version of a file as it stood three weeks ago, or find out when a bug was introduced? Who was the last person to edit this file?source
Almost 10 years ago, I read Getting Things Done for the first time. It showed me the importance of having a trusted system, a place for all of the things that you want to or have to do — be they personal, professional, or otherwise. That book is responsible for getting me excited about productivity tools and systems — an excitement that has been with me for my entire professional life.source
“Here is how we run our All Hands and why I think it’s worth investing the time to make this meeting the best it can be.”source
Four years ago, I was coming back to work from my first maternity leave, and was working 3 days a week. Week after week, I kept my head down and got my coding tasks done in my limited time in the office.
Soon it became crystal clear to me that even if I did this incredibly well — as well as I possibly could — I wouldn’t be given the opportunity to lead a team or to do more strategic work. I would just get more coding tasks assigned to me. At that point, I could see that what I was doing wouldn’t get me to where I wanted, but I also didn’t know what I should do instead. So here’s the post I wish I had read then.source
The principles that guided us in this process is transparency and collaboration with the team. We managed to avoid hurting the productivity while creating a framework for growth in the team and clear expectations.source
“Receptor is meant, primarily, to provide connectivity for services that need to distribute work across different network topologies.”source
If you want to act as a leader of successful collaboration initiatives, you will need collaborative team members alongside you in order to do it properly. That’s why spotting collaboration ability is critical in a job interview.source
“This is an introductory article about building and testing Python web api service with Jenkins CI (continuous integration) pipeline (using Jenkinsfile).”source
Kubernetes comes with its own set of abstractions, its own lingo, but with a little bit of imagination we can correlate those abstractions with more familiar concepts.source
Can designing and building an application be as simple and as intuitive as the layout of your house?source
“To build a strong team you must see someone else's strength as a complement to your weakness, not a threat to your position of authority.”source
We use our Leadership Principles every day, whether we’re discussing ideas for new projects or deciding on the best approach to solving a problem. It is just one of the things that makes Amazon peculiar.source
Good managers are often good leaders. But managers don’t have to be good leaders to get their way because they have authority to make decisions unilaterally.source
There’s a lot more to the craft of software engineering than just the ability to code. In fact, I would say that the ability to write programs accounts for less than half of the skills that a good engineer needs to have.source
As managers, one of our responsibilities is to provide the safest workplace we can to those around us. This includes members of marginalized groups who are dealing with a rapidly worsening environment, folks who may be anticipating legal challenges, and people with families who are uncertain about their ability to keep their jobs and stay safe in their communities. How do we support our reports in this rapidly changing political environment?source
Organizations of all kinds have long struggled to accurately measure the performance of individual members. The typical approach is to assess an individual’s performance against a metric usually tied to whether or not they performed a task and the amount of output they generated by doing so. There’s a lot riding on these assessments: everything from compensation increases and bonus payments to promotions. And as anyone who has ever given or received a traditional performance review knows, this process can be highly subjective — even in the most metrics-obsessed organizations.
But what about the kinds of jobs where measuring someone’s “output” isn’t about counting the number of widgets they produced, but rather it’s about how they managed a team or influenced others or helped people collaborate better? While it might be easy to measure someone’s output on an assembly line, how do we decide how well a manager manages or a leader leads?source
Being born mean you need to survive, encounter any challenges and keep forward no matter what happens to you. At some point in your life, you may be facing something that you never did before and seemingly too big for your size. While you still thinking how to get through, you also should believe that nothing can stop you if you believe you can do it. Here are the best motivational quotes that could make you eager than ever before.source
OK, this post won’t tell you how to magically make each day 38 hours long (we’re still working on that). But by assessing our tasks in terms of their significance, we can free up more time tomorrow, says leadership coach Rory Vaden.source
“Over a year and a few stumbling blocks later, I have now formed a much clearer perception of how we can get to this state of consent; the state of effective leadership.”source
Use this rule if you’re often over-committed or too scattered.source
If you’re not saying “HELL YEAH!” about something, say “no”
One of the most common steps in defining titles when a company is hitting its growth stage is adding ‘Senior’ to the moniker of engineer but soon enough, especially if retention is good and people are staying on board a number of years, companies realize they need more than just a 2 level engineering ladder. This is where titles like ‘principal’ or ‘staff’ engineer become part of the defined career ladder. However, principal engineer should not be seen as a natural progression to senior engineering levels.source
Code reviews are a popular method of catching bugs early in development through peer-reviewing someone’s code. But perhaps more important than catching bugs, these reviews also serve as a chance to see how something is built and have a conversation about it. Because testers question software differently from developers, it’s important that we participate in this knowledge-sharing practice.source
UI testing is hard. I believe this challenge has led to a considerable shift in recent years to do less UI testing, focusing instead on REST testing and unit testing UI pages. This isn’t necessarily a bad thing. But with less focus on the piece of the application users interact with the most, there is a risk that something will be missed — and bugs creep in.source
People associate running pods with Kubernetes. And when they run containers in their development runtimes, they do not even think about the role pods could play—even in a localized runtime. Most people coming from the Docker world of running single containers do not envision the concept of running pods. There are several good reasons to consider using pods locally, other than using pods to naturally group your containers.source
Research shows that office workers cannot concentrate at their desks. In fact, one study found that the number of people who say they cannot concentrate at their desk has increased by 16 percent since 2008. Also startling: The number of workers who say they do not have access to quiet places to do focused work is up by 13 percent.source
The modern iterative software development lifecycle has developers checking in code to version control systems frequently, with continuous integration handling building and running automated tests at an almost equally fast rate. This can generate an enormous amount of test data. Here’s how you can ensure you are reporting results effectively across your team and realizing all the benefits of that information.source
Are you building an API? Here is the idea: If you have never heard about the REST architectural style constraints and their implication on the properties of the resulting distributed system and you do not want to (or can’t) educate yourself, use GraphQL.source
A good software architecture allows decisions about frameworks, databases, web-servers, and other environmental issues and tools, to be deferred and delayed. A good architecture makes it unnecessary to decide on Rails, or Spring, or Hibernate, or Tomcat or MySql, until much later in the project. A good architecture makes it easy to change your mind about those decisions too. A good architecture emphasizes the use-cases and decouples them from peripheral concerns.source
Have you ever worked at a company where the same two people always got the most important projects? Me too. It's frustrating to watch these opportunities to learn from the side lines, and reliance on a small group can easily limit a company's throughput as it grows. This is so important that I've come to believe that having a wide cohort of folks who lead critical projects is one of the most important signifiers of good organizational health.source
Because of the massive move from office to home office due to the global Corona pandemic, leaders will have to massively shift from KPI-management (Key Performance Indicators) to CPI-leadership (Caring For People Indicators) if they want their teams to survive and their people to remain engaged.source
Last week someone asked me this question, ‘How important are management skills vs. the rest of it?’source
Shift Left is a buzzword in Software Testing. It is not new, in fact it has always been around. Shift left is all about creating a culture where testers can be involved early in the software development life cycle to start testing activities early. Idea is to reduce the risks.source
This is a great article to better understand Agile as a methodology and a recap of several of Agile's core values. You will also gain some insight into why agile can fail and why agile is not a 'software delivery methodology. Happy reading...source
“Once you have a project that is a few years old with a large test suite an ugly pattern emerges.
Some tests that used to always work, start “sometimes” working. This starts slowly, “oh that test, yeah it sometimes fails, kick the build off again”. If left unmitigated it can very quickly snowball and paralyze an entire test suite.”source
“In April, BBC Culture polled experts around the world to nominate up to five fictional stories they felt had shaped mindsets or influenced history. We received answers from 108 authors, academics, journalists, critics and translators in 35 countries – their choices took in novels, poems, folk tales and dramas in 33 different languages, including Sumerian, K’iche and Ge’ez.”source
Over the past year, I have had many conversations with people both inside and outside of Red Hat that always seem to revolve around two questions (much to my dismay and squinty-eyed loosquintyk when asked):
- Where are we going with Agile in the Products & Technologies division at Red Hat?
- When is your team going to standardize the process for the entire division so everyone is doing the same thing?
As leaders, sometimes managing our egos is one of the toughest challebges we face. It is the thing that when not checked is most likely to get us into trouble as well.source
Studies show that human factors most influence the quality of our work. So why do we put so much stake in technical solutions?source
This is such a fun exercise because it can be created in a wide variety of ways. Ruby is a very good example of an OOPL, so I’ll cover two options: Cells as Objects, and Board as Object.source
Central to humanity’s quest to grasp the nature of the universe and make sense of our own existence is zero, which began in Mesopotamia and spurred one of the most significant paradigm shifts in human consciousness — a concept first invented (or perhaps discovered) in pre-Arab Sumer, modern-day Iraq, and later given symbolic form in ancient India.source
Why do we tell stories? And why in a world with such an overabundance of information is there even room for fiction? Access to information has made our jobs increasingly data-driven and would appear to put a premium on being factual. But unlike industrial labor, knowledge work, for all of its data, is much harder to measure, and stories are a proven method for trying on alternate realities that we may or may not want to manifest. We tell stories so that other people can imagine an experience we want to share. Without fiction, there are no new ideas. Even a scientific theory is fictional until proven.source
“At companies building world-class products, product-minded engineers take teams to a new level of impact.”source
“A good internal design communication system is one of the most important leverages an organization can have to make an impact”source
Leadership isn’t all rainbows and butterflies. It’s more hurricanes, lost dogs, and sunrises.source