Emily
Preface: I’m not sure if thise is the right place, because this is not direclty Elixir related… but I’ve always got some of the best advice from this community.
Current situation: Spinning wheels… false starts… moving way too slow trying to get a software project airborne.
Mission:
Get a broad spectrum, eagles eye overview of best development practices, tools, resources, systems, techniques, streamlining, optimisations, unspoken tricks & practices etc. used to produce some of the best code we’ve seen so far, complete with case studies of successful projects, case studies of unsuccessful projects.
On the other side of the deep dive, have enough of an understanding of the landscape that I can avoid the common pitfalls that cause software projects to fail… compressioning years into days.
I’ve largely been self-taught. From that, a lot of frustration, and I’m sure bad habits developed.
I want to expose those now. And move forward with a much stronger, broad spectrum grounding of not the details of coding, but more so, what it takes to make a software project successful, from start to finish.
What do you recommend?
Trending in Chat/Questions
Other Trending Topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #ai
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #metaprogramming










First Post!- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
ardhitama
Read Extreme Programming Explained: Embrace Change, 2nd Edition (The XP Series)
That should get you far enough.
Most Liked
gregvaughn
I suggest you find ways to get in-person time with someone more experienced. That could involve pair programming at work, or maybe spending lunches with co-workers discussing technical topics. It might also help to get involved with local user groups. Via these techniques over my career I discovered people I could learn from and I’ve continued to keep in touch with them over decades.
I know you want to have all the knowledge/experience now, and your enthusiasm is laudable, but have some patience with yourself. It will take time. Start with solving concrete problems, then working to more general abstractions. Over time you’ll see connections between past problems you faced and a current problem and gain intuition on how to approach it.
dwahyudi
There are plenty books and courses about software development. But software development tends to follow the same path:
The twist is, there are plenty branches, schools of thoughts, opinions, and best practices on how to do these things. Computer science is natural, much like math, but when you add people into it, it becomes software engineering, it is so different, because there are people, people are different to each other.
Some people prefer doing the TDD, others not so.
Some people prefer doing daily stand-up, others not so.
Some people prefer using framework like scrum, others not so.
Even Agile itself (according to Martin Fowler) means no framework, no rule, just follow what team knows best.
Now, if you ask me what universally makes a software project to fail (in engineering point of view), I can make you a simple stupid list:
The first point above actually correlates with the last point as well, as software requires more and more features, quickly, you need assurances on your hand, about the correctness of your features in your code. Some developers actually pairing up to write tests and code at the same time. Extreme programming. Whatever your software development methodology is, please write good tests and easy to read/understand/change code. The business will thank you.
tty
These are some of the classics and some not that well known books which would address your specific question:
This is a classic book on SE and very easy reading as well.
Using a series of exercises the PSP teaches you to improve your estimating and planning skills, manage quality and reduce the number of defects in your work. I did the exercises in the older version of this book twice, once a week over 8-10 weeks. Perhaps the hardest book to read in this list.
One of the harder books to find (in a public/university library), this book is a survey of various SE techniques, giving a brief description of each, when it is appropriate to use a specific techniques, its relative difficulty and further references. This book exposes you to a grab-bag of techniques that you can draw on when needs arises.
Given that most projects are group efforts this book covers the social aspect of software development. Like Mystical Man Month this book is very easy going and informative.
Enjoy!
Last Post!
MalloZup
Pragmatical progmmer by Andy hunt