售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Skill Up: A Software Developer's Guide to Life and Career
Table of Contents
Skill Up: A Software Developer's Guide to Life and Career
Credits
About the Author
www.PacktPub.com
eBooks, discount offers, and more
Why subscribe?
Customer Feedback
Preface
What this book covers
Who this book is for
Conventions
Reader feedback
Customer support
Errata
Piracy
Questions
I. Coder Skills
1. Discovering the Tipping Point for Developers
Tipping point for developers
My own experience
The doubt machine
The painful process
The tipping point(s)
The first tipping point
The second tipping point
The secret
The book
The solution
2. Are Developers Born or Made? – Debunking the Myth of Prodigies
Are prodigies real?
The Mozart case study
Are developers born or made?
The tipping point
Why we love the prodigy myth
3. Do You Have to Be a Genius to Be a Developer?
The running man
Do you have to be a genius to be a developer?
The way the mind works
The reason
A smarter approach
4. How to Study and Understand Complex Topics?
A system for how to study
5. Effective Study Practices for Developers
Why traditional study habits don't work
An effective study practices case study
The reification example
The hard way
Additional negative effects
The comprehensive study system
Summary
6. Defining Deep Work and What It Means for Developers
Definition of deep work
The deep work strategy for developers
Taking action
Removing distractions
Study hard and smart
Multiple sessions
Summary
7. Task Switching Costs for Developers
A system for decreasing task switching costs
8. How to Use Willpower Limits Instead of Letting Them Use You?
What are willpower limits?
How many decisions do you make each day?
Why is willpower important?
Are willpower limits real?
When the willpower well runs dry
Saving up willpower
One outfit to rule them all
Being a copycat
Focusing willpower
Summary
9. Cramming Versus Consistent Study and a Study System that Works
10. Is Reading Important for Developers?
Why is reading important for developers?
CEOs and reading
Compounded learning
A compounded learning case study
The CEO who didn't have time to read
My reading system
The reading schedule
Audio books are books too!
Books are too expensive
Summary
11. Learning How to Code – Getting Past Skill Plateaus
What is a learning plateau?
False ceiling
Getting past skill plateaus
Proper information/resources
Best practices
Challenging/new tasks
Frustration = skill
Summary
12. Developer Learning Curve – Why Learning How to Code Takes So Long
What is the learning curve?
The developer learning curve
Liftoff
The twilight zone
The zone
A unique journey
Summary
13. Slowing Down to Learn How to Code Faster
Learn how to code faster
Our default mind
Hacking the mind
Slowing it down
Bend it like Beethoven
From classical music to coding
A practical system
14. Mental Models for Learning How to Code and Improve as a Developer
Mental models for the Kouros
What are mental models?
Mental models for developers
Summary
15. A Developer's Guide for Hacking Procrastination to Achieve Success
Root causes of procrastination
Hacking procrastination
Hacking perfectionism
Hacking the fear of success
Hacking the plan
Summary
16. The Problem with Procrastination for Developers
The problem with procrastination
Instant gratification
Baby steps to knock out procrastination
Baby coding steps
17. Practical Ways to Use the Pomodoro Technique as a Developer
Practical ways to use the Pomodoro Technique
Taking a break
Lifestyle versus fads
A lifestyle of productivity
Practical implementation
18. The Power of Making Mistakes – Learning by Failing
The secret weapon to mastery – making mistakes
Making mistakes – memory steroids
Mistakes force learning
Mistakes kill pride
Summary
19. Learn How to Code – The Guide to Memorization
The guide to memorization
Repetition
Smarter, not harder
Visual mental mapping
Short-term versus long-term memory
Implementing visual mental mapping
Taking a real-world example
Finding patterns
Copy and paste is the enemy
Not everything has to be memorized
20. A System for Learning a New Programming Language
21. Development Study Tips – Reverse Note-Taking
The problem with traditional note-taking
Reverse note-taking
Benefits of reverse note-taking
Narrowed focus
Story-based mindset
Forced repetition
Summary
II. Freelancer Skills
22. Tips for Organically Growing a Freelance Business
Organically growing a freelance business
Referral requests
Blogging
Expert positioning
Open source contribution
Social media marketing
Summary
23. Freelancing Tips – Knowing When to Fire a Client
My urgent client
When to fire a client
#1 – being treated like an employee
#2 – tyranny of urgent
#3 – toxic environment
The joy of firing a client
24. Dodging Silver Bullets for Scalable Freelance Projects
The problem with silver bullets
Silver bullet customization
Becoming a sharp shooter with code libraries
25. A Freelance Guide to Managing Advanced Features
Managing advanced features
The talent pool
The process
Kanban
The result
Summary
A caveat
26. Freelancer Interviews – Practical Tips for Taking Over a Legacy Application
27. Five Tips for Taking Over a Legacy Application
Tips for taking over a legacy application
Creating a test suite
Adding new features via TDD
Breaking out specific features into microservices
DRY up the codebase
Summary
28. Guide to Freelancing – Starting Over Versus Refactoring
The legacy scenario
Starting over versus refactoring
#1 – removing the fear factor
#2 – analyzing the 80/20 principle
#3 – building an automated bug list
#4 – becoming the client
When should you start over?
Summary
29. Should You Use TDD on Freelance Projects? – Comparing Quality Versus Speed
Quality versus Speed
TDD on freelance projects
Making the decision
Giving no choice
Letting the client decide
Using common sense
30. Automating Client Updates as a Freelance Developer
Importance of daily updates
An example of client update
Automating client updates
Version control to the rescue
Summary
31. Freelance Requirement Elicitation – A Guide for Feature Development
Freelance requirement elicitation
How it started
The build
The problem
Who was at fault?
A better way
Step 1
Step 2
A better ending
Summary
32. How to Remotely Demo Work for Freelance Clients?
Why proper demonstrations are important
Review of services to remotely demo work
Screencast
A remote desktop
PowerPoint
Summary
33. Defining Project Success as a Freelance Developer
A clear end
What is scope creep?
When scope creep isn't scope creep
When scope creep goes badly
Based on requirements
Based on a story
The sign off
Summary
34. Top Project Management Tools for Freelancers
Top project management tools
Basecamp
Trello
LeanKit
ProWorkflow
Wrike
GitHub
Summary
35. Top Freelance Bookkeeping Options for Developers
Freelance bookkeeping options
FreshBooks
How it works
FreshBooks additional features
Weaknesses
QuickBooks
NetSuite
Summary
36. Learning the Secret to Get New Clients as a Freelancer
Where to find new clients
The challenge in getting new clients with outsourcing services
Getting new clients as a freelancer
Proposal material
Sending out constant proposals
The result
Summary
37. Managing Client Conflicts as a Freelancer
Strategies for managing client conflicts
38. Examples of Freelance Portfolios That Help Acquire New Clients
Examples of freelance portfolios
Social network utility
An API tool
An accounting application
A scheduling application
A frontend application
39. Importance of Test-Driven Development for Coders
Importance of test-driven development
Summary
40. SEO Best Practices and Strategies for Freelancers
SEO best practices tutorial
Content is king
Creating an XML sitemap
Mixing text, images, and videos
Managing your site speed
Site responsiveness
Backlinks
Focused content
Summary
41. Client Communication Freelancing Tips
A system to maintain proper client communication
Summary
42. Outsource Web Developers Properly with System-Based Processes
A system to manage outsourced web developers
Summary
43. How to Create Accurate Freelance Bids?
Summary
44. Freelancer Tips – Three Ways to Get New Clients
Freelancing services
Referrals
Summary
III. Career Skills
45. Should I Learn to Code? – A Balanced Perspective on Programming
Should I learn to code? – a balanced look at both sides
Summary
46. Following Your Passion – Good or Bad Advice for Developers?
Following your passion – a case study
Summary
47. How to Learn to Code from Scratch? – A Practical Strategy
Small bites
Tutorials
Reading
Real-world projects
Coding is hard
But you can learn programming
48. How to Choose a Developer Specialty?
How to choose a developer specialty?
#1 – the full stack developer
#2 – the server-side developer
#3 – the frontend developer
#4 – the mobile developer
#5 – the data scientist
Making the decision
49. How to Choose Your Next Programming Language?
How to pick a programming language?
The next job you want
Your specialty
Specialty-based mapping
Summary
50. Developer Soft Skills – Learning How to Gain an Edge in the Marketplace
Developer soft skills
Writing
Conversation
Conversation tips
Management
Design
Public speaking
Becoming a better public speaker
The importance of soft skills
51. Developer Learning Options – A Practical Analysis
Degrees of programming expertise
Becoming a professional developer
Developer bootcamps
Is this practical?
Improving your skill in your current profession
Is this practical?
Learning for fun or as a hobby
Summary
52. Is it Possible to Lose Your Coding Skills?
Summary
53. Is Writing Bad Code Immoral for Developers?
How to write better code
Summary
54. Inspirational Programming Advice from Howard Roark
55. Best Practices Versus Creativity as a Developer
56. A Practical Guide to Approaching Project Development
Student question
Strategies to approaching project development
Planning a feature from start to end
Moving from requirements to stories
Starting with a base case
Fear of the unknown
Moving fast and breaking things
Battling procrastination
Small, practical steps
Getting unstuck
Application bugs
Messages over models
57. How to Practice Programming Techniques and Improve as a Developer?
Engaging in pair programming
Utilizing open source software
Visiting the DailyProgrammer subreddit on Reddit
Taking online courses
Code katas
Summary
58. What Does It Take to Become a Great Developer?
Tips for becoming a great developer
Working through difficult features
Community contribution
Artistry
Craftsmanship
Steve Jobs's craftsmanship
Adapting to change
Tireless learning
Summary
59. How to Stay Sharp as a Developer?
Tips to stay sharp as a developer
#1 – coding exercises
Example coding exercises
#2 – teaching others to code
How does this apply to development?
#3 – reading
#4 – newsletters
#5 – tutorials
Summary
60. Developer Resume Tips – How to Create an Effective Resume?
Developer resume tips
Keep it simple
Keep it relatable
Keep it professional
Summary
61. Developer Salary Negotiation Strategies
Knowing your skill set
Knowing the industry
Knowing the organization
Researching salary rates
62. Best Questions to Ask During a Job Interview
Best questions to ask during a job interview
Poor questions to ask during a job interview
Summary
63. Answering in an Impossible Interview
Questions
Answering impossible interview questions – case studies
64. Greatest Weakness Answers for Coding Interviews
Bad answers to your greatest weakness
Good answers to your greatest weakness
65. Enterprise Software Job Strategy and Guide
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜