معرفی کتاب «EFFECTIVE REMOTE WORK : for yourself, your team, and your company» نوشتهٔ Pierre Hadot، Michael Chase و Dr. James Stanier، منتشرشده توسط نشر <<The>> Pragmatic Bookshelf در سال 2022. این کتاب در 123 صفحه، فرمت epub، زبان انگلیسی ارائه شده است.
The office isn't as essential as it used to be. Flexible working hours and distributed teams are replacing decades of on-site, open-plan office culture. Wherever you work from nowadays, your colleagues are likely to be somewhere else. No more whiteboards. No more water coolers. And certainly no Ping-Pong. So how can you organize yourself, ship software, communicate, and be impactful as part of a globally distributed workforce? We'll show you how. It's time to adopt a brand new mindset. Remote working is here to stay. Come and join us. Remote working is on the rise. Whether or not we are remote workers, it is likely we are all part of a global workforce. We need to learn to interact remotely, because we are all remote from someone in some way. Rather than simply simulating the way we'd usually work together via digital means, we have to learn new communication skills and adopt a different mindset in order to work remotely effectively, efficiently, and, most importantly, healthily. We'll start by getting you set up with the right equipment and habits. Then, we'll learn the mindset of treating everyone as remote, and conquer both synchronous and asynchronous communication. You'll learn how to produce amazing artifacts, how to communicate clearly, and how to manage yourself and your teams. Then we'll look at the bigger picture: from measuring the remote readiness of your workplace, to creating a handbook for your team, to exploring remote-first culture and tackling burnout and mental well-being. Fundamentally we'll see that adopting a remote-working mindset can do wonders for our organization, our effectiveness, and our impact in our careers. It can even create a more diverse and inclusive industry for us all to work in. So what are you waiting for? The remote future is now. Be a part of it. What You Need: There are no prerequisites to reading this book, other than having had some experience of working in the software industry and a healthy curiosity. The Rust programming language is consistent and does its best to avoid surprising the programmer. Like all languages, though, Rust still has its quirks. But these quirks present a teaching opportunity. In this book, you'll work through a series of brain teasers that will challenge your understanding of Rust. By understanding the gaps in your knowledge, you can become better at what you do and avoid mistakes. Many of the teasers in this book come from the author's own experience creating software. Others derive from commonly asked questions in the Rust community. Regardless of their origin, these brain teasers are fun, and let's face it: who doesn't love a good puzzle, right? What better way to exercise your brain and increase your Rust programming knowledge than with a collection of dynamic brain teasers? As you read through each of these puzzles and try to work out the answers, you'll not only learn about Rust's unique quirks and peculiarities, you'll also have loads of fun along the way. Dive right in and get started with example code and sample problems that cover numbers and text, shadowing and memory, and everything in between. Try to figure out why a particular program won't compile, why it produces unexpected output, or why it panics and terminates with an error message. Once you've run the code and read the answer, it's time to get to the heart of the matter with a detailed explanation. Learn why a program produced the result it did, and discover how similar issues might affect the code you write in your own programs, even in production. Sourced from engaging discussions within the Rust community, real-world problems, and even reader feedback, these challenges will certainly surprise, enlighten, and entertain you. Are you ready to experience Rust like never before? Then sharpen your brain and get ready for a challenge! What You Need: This book assumes you have some knowledge of the Rust programming language. To work through the brain teasers in this book, you'll need a working Rust environment on any platform. You can install Rust by visiting https://rustup.rs/. You'll also need a text editor or Rust-friendly IDE. This Book Contains 25 Short Programs That Will Challenge Your Understanding Of Go. Like Any Big Project, The Go Developers Had To Make Some Design Decisions That At Times Seem Surprising. This Book Uses Those Quirks As A Teaching Opportunity. By Understanding The Gaps In Your Knowledge, You'll Become Better At What You Do. Some Of The Teasers Are From The Author's Experience Shipping Bugs To Production, And Some From Others Doing The Same. Teasers And Puzzles Are Fun, And Learning How To Solve Them Can Teach You To Avoid Programming Mistakes And Maybe Even Impress Your Colleagues And Future Employers. Programmers Love The Go (golang) Programming Language Because Of Its Efficiency And Simple Tooling. But That Doesn't Mean Programming In Go Is Without Challenges, Like Hidden Dependencies That Trip Up The Compiler And Interesting String Type Conversions That Differ From Languages Like Python. Work Your Way Through 25 Short Brain Teasers, And Learn The Nuances Of Go In One Of The Most Fun And Creative Ways Around. Challenge Yourself And Challenge Your Assumptions To Gain A More In-depth Understanding Of Integers, Strings, Unicode, Compiler Behavior, And A Variety Of Subtle Programming Gotchas That Might Otherwise Trip You Up. Just Read A Short Program Written In Go, Try To Guess The Output, Run The Code Yourself, And Then Go To The Next Page For An Explanation Of The Solution. By Working Through These Brain Teasers, You'll Tighten Up Your Go Programming Skills And Have Lots Of Fun At The Same Time. Taken From Real-world, Programming Problems, Conference Talks, And Meetup Quizzes, These Brain Teasers Provide An Effective Learning Tool That's As Enjoyable As It Is Educational. What You Need: This Book Assumes You Know Go At Some Level And Have Experience Programming With It. *note: * We Use Go Version 1.14.1 To Run The Code; The Output Might Change In Future Versions. You Will Need A Working Go Environment, You Can Download It From Https: //golang.org/dl. You Will Probably Want A Good Ide For Go, Two Of The Most Popular Ones Are Visual Studio Code And Goland. Estimating software development often produces more angst than value, but it doesn't have to. Identify the needs behind estimate requests and determine how to meet those needs simply and easily. Choose estimation techniques based on current needs and available information, gaining benefit while reducing cost and effort. Detect bad assumptions that might sink your project if you don't adjust your plans. Discover what to do when an estimate is wrong, how to recover, and how to use that knowledge for future planning. Learn to communicate about estimates in a healthy and productive way, maximizing advantage to the organization and minimizing damage to the people. In a world where most developers hate estimation and most managers fear disappointment with the results, there is hope for both. It requires giving up some widely held misconceptions. Let go of the notion that "an estimate is an estimate" and estimate for the particular need you, and your organization, have. Realize that estimates have a limited shelf-life, and reestimate frequently if it's important. When reality differs from your estimate, don't lament; mine that disappointment for the gold that can be the longer-term jackpot. Estimate in comparison to past experience, by modeling the work mathematically, or a hybrid of both. Learn strategies for effective decomposition of work and aspects of the work that likely affect your estimates. Hedge your bets by comparing the results of different approaches. Find out what to do when an estimate proves wrong. And they will. They're estimates, after all. You'll discover that you can use estimates to warn you of danger so you can take appropriate action in time. Learn some crucial techniques to understand and communicate with those who need to understand. Address both the technical and sociological aspects of estimation, and you'll help your organization achieve its desired goals with less drama and more benefit. What You Need: No software needed, just your past experience and concern for the outcomes "Estimating software development often produces more angst than value, but it doesn't have to. Identify the needs behind estimate requests and determine how to meet those needs simply and easily. Choose estimation techniques based on current needs and available information, gaining benefit while reducing cost and effort. Detect bad assumptions that might sink your project if you don't adjust your plans. Discover what to do when an estimate is wrong, how to recover, and how to use that knowledge for future planning. Learn to communicate about estimates in a healthy and productive way, maximizing advantage to the organization and minimizing damage to the people. In a world where most developers hate estimation and most managers fear disappointment with the results, there is hope for both. It requires giving up some widely held misconceptions. Let go of the notion that "an estimate is an estimate" and estimate for the particular need you, and your organization, have. Realize that estimates have a limited shelf-life, and reestimate frequently if it's important. When reality differs from your estimate, don't lament; mine that disappointment for the gold that can be the longer-term jackpot. Estimate in comparison to past experience, by modeling the work mathematically, or a hybrid of both. Learn strategies for effective decomposition of work and aspects of the work that likely affect your estimates. Hedge your bets by comparing the results of different approaches. Find out what to do when an estimate proves wrong. And they will. They're estimates, after all. You'll discover that you can use estimates to warn you of danger so you can take appropriate action in time. Learn some crucial techniques to understand and communicate with those who need to understand. Address both the technical and sociological aspects of estimation, and you'll help your organization achieve its desired goals with less drama and more benefit."--Amazon.com Your team is stressed; priorities are unclear. You're not sure what your teammates are working on, and management isn't helping. If your team is struggling with any of these symptoms, these four case studies will guide you to project success. See how Kanban was used to significantly improve time to market and to create a shared focus across marketing, IT, and operations. Each case study comes with illustrations of the Kanban board and diagrams and graphs to help you see behind the scenes.Learn a Lean approach by seeing how Kanban made a difference in four real-world situations. You'll explore how four different teams used Kanban to make paradigm-changing improvements in software development. These teams were struggling with overwork, unclear priorities, and lack of direction. As you discover what worked for them, you'll understand how to make significant changes in real situations.The four case studies in this book explain how to: Improve the full value chain by using Enterprise Kanban Boost engagement, teamwork, and flow in change management and operations Save a derailing project with Kanban Help an office team outside IT keep up with growth using KanbanWhat seems easy in theory can become tangled in practice. Discover why'improving IT'can make you miss your biggest improvement opportunities, and why you should focus on fixing quality and front-end operations before IT. Discover how to keep long-term focus and improve across department borders while dealing with everyday challenges. Find out what happened when using Kanban to find better ways to do work in a well-established company, including running multi-team development without a project office. You'll inspire your team and engage management to make it easier to develop better products.What You Need:This is a case study book, so there are no software requirements. The book covers the relevant bits of theory before presenting the case studies. A Scrum Master's work is never done. The Development team needs your support, the Product Owner is often lost in the complexities of agile product management, and your managers and stakeholders need to know what will be done, by when, and for how much. Learn how experienced Scrum Masters balance the demands of these three levels of servant leadership while removing organizational impediments and helping Scrum Teams deliver real world value. Discover how to visualize your work, resolve impediments, and empower your teams to self-organize and deliver using the Scrum Values, Agile Principles, and advanced coaching and facilitation techniques. A Scrum Master needs to know when their team is in trouble and understand how to help them get back on the path to delivery. Become a better Scrum master so you can find the problems holding your teams back. Has your Daily Scrum turned in to a meeting? Does your team struggle with creating user stories? Are stakeholders disengaged during Sprint Review? These issues are common. Learn to use empiricism as your guide and help your teams create great products. Scrum is so much more than a checklist of practices to follow, yet that's exactly how many organizations practice it. Bring life back to your Scrum events by using advanced facilitation techniques to leverage the full intelligence of your team. Improve your retrospectives with new formats and exercises. Ask powerful questions that spark introspection and improvement. Get support and buy-in from management. Use Scrum as a competitive advantage for your organization. Create a definition of done that improves quality and fix failing sprints. Take the next step on your journey as a Scrum master. Transform your Scrum practices to help your teams enjoy their work again as they deliver high quality products that bring value to the world. What You Need: A moderate level of experience using the Scrum Framework. Software startups make global headlines every day. As technology companies succeed and grow, so do their engineering departments. In your career, you'll may suddenly get the opportunity to lead teams: to become a manager. But this is often uncharted territory. How can you decide whether this career move is right for you? And if you do, what do you need to learn to succeed? Where do you start? How do you know that you're doing it right? What does "it" even mean? And isn't management a dirty word? This book will share the secrets you need to know to manage engineers successfully. Going from engineer to manager doesn't have to be intimidating. Engineers can be managers, and fantastic ones at that. Cast aside the rhetoric and focus on practical, hands-on techniques and tools. You'll become an effective and supportive team leader that your staff will look up to. Start with your transition to being a manager and see how that compares to being an engineer. Learn how to better organize information, feel productive, and delegate, but not micromanage. Discover how to manage your own boss, hire and fire, do performance and salary reviews, and build a great team. You'll also learn the psychology: how to ship while keeping staff happy, coach and mentor, deal with deadline pressure, handle sensitive information, and navigate workplace politics. Consider your whole department. How can you work with other teams to ensure best practice? How do you help form guilds and committees and communicate effectively? How can you create career tracks for individual contributors and managers? How can you support flexible and remote working? How can you improve diversity in the industry through your own actions? This book will show you how. Great managers can make the world a better place. Join us "Software startups make global headlines every day. As technology companies succeed and grow, so do their engineering departments. In your career, you'll may suddenly get the opportunity to lead teams: to become a manager. But this is often uncharted territory. How can you decide whether this career move is right for you? And if you do, what do you need to learn to succeed? Where do you start? How do you know that you're doing it right? What does "it" even mean? And isn't management a dirty word? This book will share the secrets you need to know to manage engineers successfully. Going from engineer to manager doesn't have to be intimidating. Engineers can be managers, and fantastic ones at that. Cast aside the rhetoric and focus on practical, hands-on techniques and tools. You'll become an effective and supportive team leader that your staff will look up to.Start with your transition to being a manager and see how that compares to being an engineer. Learn how to better organize information, feel productive, and delegate, but not micromanage. Discover how to manage your own boss, hire and fire, do performance and salary reviews, and build a great team. You'll also learn the psychology: how to ship while keeping staff happy, coach and mentor, deal with deadline pressure, handle sensitive information, and navigate workplace politics. Consider your whole department. How can you work with other teams to ensure best practice? How do you help form guilds and committees and communicate effectively? How can you create career tracks for individual contributors and managers? How can you support flexible and remote working? How can you improve diversity in the industry through your own actions? This book will show you how." -- Publisher description Today's tech unicorns develop software differently. They've developed a way of working that lets them scale like an enterprise while working like a startup. These techniques can be learned. This book takes you behind the scenes and shows you how companies like Google, Facebook, and Spotify do it. Leverage their insights, so your teams can work better together, ship higher-quality product faster, innovate more quickly, and compete with the unicorns. Massively successful tech companies, or Unicorns, have discovered how to take the techniques that made them successful as a startup and scale them to the enterprise level. Amazon, Facebook, Google, and Spotify all work like startups, despite having workforces numbering in the tens of thousands. Ex-Spotify engineer and coach, Jonathan Rasmusson, takes you behind the scenes and shows you how to develop software the way the best companies do it. Learn how to give teams purpose through Missions, empower and trust with Squads, and align large scale efforts through Bets. Create the culture necessary to make it happen. If you're a tech or product lead and you want to ship product better, this is your playbook on how the world's best do it. If you're an engineer, tester, analyst, or project manager, and you suspect there are better ways you could be working, you are correct. This book will show you how. And if you're a manager, Agile coach, or someone just charged with improving how your company ships software, this book will give you the tools, techniques, and practices of the world's most innovative, delivery-focused companies. Don't just admire the top companies - learn from them. "The Rust programming language is consistent and does its best to avoid surprising the programmer. Like all languages, though, Rust still has its quirks. But these quirks present a teaching opportunity. In this book, you'll work through a series of brain teasers that will challenge your understanding of Rust. By understanding the gaps in your knowledge, you can become better at what you do and avoid mistakes. Many of the teasers in this book come from the author's own experience creating software. Others derive from commonly asked questions in the Rust community. Regardless of their origin, these brain teasers are fun, and let's face it: who doesn't love a good puzzle, right? What better way to exercise your brain and increase your Rust programming knowledge than with a collection of dynamic brain teasers? As you read through each of these puzzles and try to work out the answers, you'll not only learn about Rust's unique quirks and peculiarities, you'll also have loads of fun along the way. Dive right in and get started with example code and sample problems that cover numbers and text, shadowing and memory, and everything in between. Try to figure out why a particular program won't compile, why it produces unexpected output, or why it panics and terminates with an error message. Once you've run the code and read the answer, it's time to get to the heart of the matter with a detailed explanation. Learn why a program produced the result it did, and discover how similar issues might affect the code you write in your own programs, even in production"-- Amazon Rust Is An Exciting New Programming Language Combining The Power Of C With Memory Safety, Fearless Concurrency, And Productivity Boosters - And What Better Way To Learn Than By Making Games. Each Chapter In This Book Presents Hands-on, Practical Projects Ranging From Hello, World To Building A Full Dungeon Crawler Game. With This Book, You'll Learn Game Development Skills Applicable To Other Engines, Including Unity And Unreal. Rust Is An Exciting Programming Language Combining The Power Of C With Memory Safety, Fearless Concurrency, And Productivity Boosters. With Rust, You Have A Shiny New Playground Where Your Game Ideas Can Flourish. Each Chapter In This Book Presents Hands-on, Practical Projects That Take You On A Journey From Hello, World To Building A Full Dungeon Crawler Game. Start By Setting Up Rust And Getting Comfortable With Your Development Environment. Learn The Language Basics With Practical Examples As You Make Your Own Version Of Flappy Bird. Discover What It Takes To Randomly Generate Dungeons And Populate Them With Monsters As You Build A Complete Dungeon Crawl Game. Run Game Systems Concurrently For High-performance And Fast Game-play, While Retaining The Ability To Debug Your Program. Unleash Your Creativity With Magical Items, Tougher Monsters, And Intricate Dungeon Design. Add Layered Graphics And Polish Your Game With Style. What You Need: A Computer Running Windows 10, Linux, Or Mac Os X. A Text Editor, Such As Visual Studio Code. A Video Card And Drivers Capable Of Running Opengl 3.2. Learn a Lean approach by seeing how Kanban made a difference in four real-world situations. Youll explore how four different teams used Kanban to make paradigm-changing improvements in software development. These teams were struggling with overwork, unclear priorities, and lack of direction. As you discover what worked for them, youll understand how to make significant changes in real situations. The four case studies in this book explain how to: Improve the full value chain by using Enterprise Kanban Boost engagement, teamwork, and flow in change management and operations Save a derailing project with Kanban Help an office team outside IT keep up with growth using Kanban What seems easy in theory can become tangled in practice. Discover why improving IT can make you miss your biggest improvement opportunities, and why you should focus on fixing quality and front-end operations before IT. Discover how to keep long-term focus and improve across department borders while dealing with everyday challenges. Find out what happened when using Kanban to find better ways to do work in a well-established company, including running multi-team development without a project office. Youll inspire your team and engage management to make it easier to develop better products. Massively successful tech companies-- Unicorns--have discovered how to take the techniques that made them successful as a startup and scale them to the enterprise level. Amazon, Facebook, Google, and Spotify all work like startups, despite having workforces numbering in the tens of thousands. Go behind the scenes with an Ex-Spotify engineer and coach, and learn to develop software the way the best companies do it. If you're a tech or product lead and you want to ship product better, this is your playbook. If you're an engineer, tester, analyst, or project manager, and you suspect there are better ways to work, you are correct. And if you're a manager, Agile coach, or some one charged with improving how your company ships software, this book will give you the tools, techniques, and practices of world's most innovative, delivery-focused companies. Don't just admire the top companies; learn from them Broken Scrum practices limit your organizations ability to take full advantage of the agility Scrum should bring: The development team isnt cross-functional or self-organizing, the product owner doesnt get value for their investment, and stakeholders and customers are left wondering when somethinganythingwill get delivered. Learn how experienced Scrum masters balance the demands of these three levels of servant leadership, while removing organizational impediments and helping Scrum teams deliver real-world value. Discover how to visualize your work, resolve impediments, and empower your teams to self-organize and deliver using advanced coaching and facilitation techniques that honor and support the Scrum values and agile principles.
Your team is stressed; priorities are unclear. You're not sure what your teammates are working on, and management isn't helping. If your team is struggling with any of these symptoms, these four case studies will guide you to project success. See how Kanban was used to significantly improve time to market and to create a shared focus across marketing, IT, and operations. Each case study comes with illustrations of the Kanban board and diagrams and graphs to help you see behind the scenes.