 In the film [Glengarry Glen Ross](http://www.imdb.com/title/tt0104348/), Alec Balwin's character Blake goes on a 7-minute rant on the importance of closing a sale. Three minutes into the rant [he flips over a blackboard and points to the words "always be closing"](https://vimeo.com/mavada/brassballs#t=176s), aggressively repeating the words.  This has become a popular meme for programmers, with the word "coding" replacing the word "closing". But why should you "always be coding"? # 1. To learn new technologies Very few professions change as dramatically, and in such a short space of time, as software engineering. Developers who don't go with the flow will be left behind as new graduates, who have studied these technologies, enter the job market. A great example can be found in databases. For more than twenty years relational databases dominated this space. When the needs of Web 2.0 required better availability and partitioning of data, and faster access to it, NoSQL was born. NoSQL is a high-valued skill, and whilst relational databases are still important, it's rarely enough on its own. # 2. To develop a portfolio Employers wants the best of the best. Traditional avenues for finding Seriously-Good-Programmers™ are fraught with uncertainty: a résumé only provides a glamorised overview of a candidate's experiences; and [technical interview performance are kind of arbitrary](http://blog.interviewing.io/technical-interview-performance-is-kind-of-arbitrary-heres-the-data/). Recruiters need to see what a candidate can do. Jeff Atwood of [Coding Horror](http://blog.codinghorror.com/) (and a whole bunch more) fame puts it best in his [how to hire a developer](http://blog.codinghorror.com/how-to-hire-a-programmer/) guide: >Just seeing what kind of work people have done, and what sort of online artifacts they've created, is tremendously helpful in getting a sense of what people do and what they're good (or bad) at. Your portfolio is a record of the journey you've taken in becoming a programmer and gives recruiters a much better image of what you're capable of. # 3. To keep skills fresh When you began your road trip to become a **Rock Star Programmer™** you learned a lot of topics in a short space of time. Many of these topics won't be used on a daily basis when you get your first developer gig, causing the knowledge to deteriorate. For example, you'll have an idea of how to implement a breadth-first search or how to determine the run-time complexity of an algorithm, but if put on the spot to explain it, or even worse implement it, you'll find it difficult. Or think of it this way: in football (the English kind) penalties are a relatively small part of the game. Despite this players practice them on a regular basis so that when the skill is called upon it feels natural. # 4. To improve problem solving skills At its heart software engineering is about solving problems. It's about using code to serve a need. And because software engineering spans so many different fields it's important to learn how to apply your skills in such contrasting domains. My first job after graduating from university was on a team developing a document notification system for processing pension applications; in my current job I work on web service that predicts mutations in proteins. This diversity is what makes software engineering so interesting, but it also poses a challenge: we need to learn to apply our skills in unfamiliar domains. I think Eric Evans describes it most succinctly in his seminal book [Domain-Driven Design](http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215): >When we set out to write software, we never know enough The more we practice our art. The more domains we apply our skills to, the more natural it becomes. # 5. To become an expert at something Working on adding tools to your software engineer's toolbox gives you the diversity you need in a world where technology changes direction so quickly. As you grow beyond junior roles to more senior positions, it can be advantageous to specialize in something, and [unless you're Jon Skeet](http://blog.stackoverflow.com/2008/11/stack-overflow-is-you/), you won't be able to specialise in everything. This could be a particular language like C++ or Rust, or a platform like Android. It could even be something more abstract, like algorithm design or systems architecture. What it should be is something focused and something that you enjoy. --- Always be coding encapsulates the sentiment that developers should make a concerted effort to grow, to [get better at programming](https://steemit.com/programming/@bitcalm/how-to-get-better-at-programming), increasing their value and improving the quality of software they produce.
author | bitcalm |
---|---|
permlink | 5-reasons-to-always-be-coding |
category | programming |
json_metadata | {"tags":["programming","howto","learn","coding"],"image":["http://steemit.bitcalm.mm.st/posts/always_coding/banner2.jpg","http://steemit.bitcalm.mm.st/posts/always_coding/always_be_closing_screenshot.png"],"links":["http://www.imdb.com/title/tt0104348/","https://vimeo.com/mavada/brassballs#t=176s","http://blog.interviewing.io/technical-interview-performance-is-kind-of-arbitrary-heres-the-data/","http://blog.codinghorror.com/","http://blog.codinghorror.com/how-to-hire-a-programmer/","http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215","http://blog.stackoverflow.com/2008/11/stack-overflow-is-you/","https://steemit.com/programming/@bitcalm/how-to-get-better-at-programming"]} |
created | 2016-09-09 18:29:18 |
last_update | 2016-09-09 18:31:06 |
depth | 0 |
children | 3 |
last_payout | 2016-10-10 18:53:42 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 18.222 HBD |
curator_payout_value | 2.783 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 4,994 |
author_reputation | 24,919,530,803,138 |
root_title | "5 reasons to always be coding" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 1,187,313 |
net_rshares | 13,911,059,038,237 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
badassmother | 0 | 2,383,146,949,222 | 100% | ||
steemit200 | 0 | 5,797,950,381,824 | 100% | ||
boy | 0 | 2,483,542,411 | 100% | ||
bue-witness | 0 | 3,015,329,123 | 100% | ||
bunny | 0 | 547,232,718 | 100% | ||
bue | 0 | 43,932,199,508 | 100% | ||
mini | 0 | 1,330,754,717 | 100% | ||
moon | 0 | 171,038,238 | 100% | ||
aizensou | 0 | 73,521,122,782 | 100% | ||
au1nethyb1 | 0 | 3,188,723,343,220 | 100% | ||
boatymcboatface | 0 | 424,683,223,922 | 100% | ||
healthcare | 0 | 500,018,940 | 100% | ||
daniel.pan | 0 | 778,548,508 | 100% | ||
helen.tan | 0 | 230,687,619 | 100% | ||
unosuke | 0 | 34,902,798,717 | 40% | ||
gregory-f | 0 | 13,761,749,718 | 100% | ||
fkn | 0 | 2,529,717,856 | 13% | ||
james-show | 0 | 25,181,737,864 | 100% | ||
elishagh1 | 0 | 3,327,730,975 | 13% | ||
richman | 0 | 10,278,008,455 | 100% | ||
acidyo | 0 | 609,077,198 | 1% | ||
murh | 0 | 1,412,760,168 | 33.01% | ||
kodi | 0 | 596,625,048 | 100% | ||
justtryme90 | 0 | 44,932,435,748 | 100% | ||
schro | 0 | 87,134,132,242 | 65% | ||
kimziv | 0 | 26,859,578,831 | 13% | ||
venuspcs | 0 | 1,737,336,869 | 1% | ||
getssidetracked | 0 | 191,345,362 | 1% | ||
soupernerd | 0 | 2,661,283,377 | 100% | ||
stranger27 | 0 | 3,228,202,026 | 100% | ||
rxhector | 0 | 732,835,918 | 100% | ||
furion | 0 | 9,055,909,846 | 13% | ||
fydel | 0 | 2,875,272,308 | 100% | ||
barbara2 | 0 | 59,418,383 | 13% | ||
ch0c0latechip | 0 | 66,020,716 | 13% | ||
doge4lyf | 0 | 61,104,120 | 13% | ||
spiz0r | 0 | 9,220,125,610 | 100% | ||
dicov | 0 | 1,206,848,597 | 100% | ||
steem1653 | 0 | 1,024,232,424 | 100% | ||
repholder | 0 | 176,017,985,764 | 100% | ||
karen13 | 0 | 3,320,378,684 | 100% | ||
cryptosi | 0 | 6,264,293,761 | 100% | ||
noodhoog | 0 | 8,567,105,060 | 100% | ||
nippel66 | 0 | 12,671,988,970 | 100% | ||
blueorgy | 0 | 170,421,132,495 | 100% | ||
benjiberigan | 0 | 11,524,756,435 | 100% | ||
jl777 | 0 | 172,172,012,854 | 100% | ||
positive | 0 | 2,049,723,307 | 13% | ||
proto | 0 | 14,672,367,264 | 100% | ||
sisterholics | 0 | 4,402,337,938 | 13% | ||
fnait | 0 | 67,418,712 | 13% | ||
keepcalmand | 0 | 61,515,910 | 13% | ||
celebr1ty | 0 | 42,301,488,978 | 100% | ||
glitterpig | 0 | 3,089,445,615 | 100% | ||
weenis | 0 | 2,613,071,735 | 100% | ||
taker | 0 | 6,888,261,292 | 100% | ||
laonie | 0 | 158,470,669,943 | 13% | ||
naturalista | 0 | 2,270,329,574 | 100% | ||
myfirst | 0 | 5,227,508,036 | 13% | ||
somebody | 0 | 32,250,103,543 | 13% | ||
flysaga | 0 | 1,206,307,150 | 13% | ||
midnightoil | 0 | 7,125,545,078 | 13% | ||
glitterfart | 0 | 493,208,320,545 | 100% | ||
andrew0 | 0 | 1,608,474,150 | 100% | ||
xiaohui | 0 | 17,761,095,533 | 13% | ||
erikkartmen | 0 | 127,353,033 | 100% | ||
sirwinchester | 0 | 53,025,177,212 | 23% | ||
xiaokongcom | 0 | 557,368,965 | 13% | ||
cristi | 0 | 6,432,545,028 | 50% | ||
xianjun | 0 | 1,123,207,330 | 13% | ||
bitcalm | 0 | 40,492,366,727 | 100% | ||
microluck | 0 | 73,720,564 | 13% | ||
macartem | 0 | 3,103,063,624 | 100% | ||
rossenpavlov | 0 | 2,576,533,802 | 100% | ||
trev | 0 | 5,704,535,345 | 100% | ||
mandibil | 0 | 50,978,687,054 | 100% | ||
cryptovpn | 0 | 9,321,802,893 | 100% | ||
shenanigator | 0 | 106,757,719,132 | 100% | ||
funkywanderer | 0 | 2,224,974,204 | 100% | ||
jeremyfromwi | 0 | 2,226,202,514 | 100% | ||
sebastianbauer | 0 | 55,669,133 | 100% | ||
sponge-bob | 0 | 22,579,943,848 | 50% | ||
brains | 0 | 23,465,129,071 | 51% | ||
uceph | 0 | 1,444,422,457 | 100% | ||
robotev1 | 0 | 316,716,605 | 100% | ||
artfullyaging | 0 | 87,615,220 | 100% | ||
ltm | 0 | 2,433,301,460 | 100% | ||
robyneggs | 0 | 162,227,319 | 100% | ||
insight2incite | 0 | 136,721,054 | 100% | ||
goldmatters | 0 | 14,757,735,189 | 100% |
Nice post one thing i think all developers should look at though is the competition. Many nations now and paying for kids to develop coding skills and are willing to put in a large amount of money to do so. Id recommend any wishing to learn or just doing it as a side job to learn your craft well or you will have a new force of people who will be able to take you place with ease.
author | cryptovpn |
---|---|
permlink | re-bitcalm-5-reasons-to-always-be-coding-20160909t185425866z |
category | programming |
json_metadata | {"tags":["programming"]} |
created | 2016-09-09 18:54:27 |
last_update | 2016-09-09 18:54:27 |
depth | 1 |
children | 2 |
last_payout | 2016-10-10 18:53:42 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 381 |
author_reputation | 3,275,527,404,575 |
root_title | "5 reasons to always be coding" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 1,187,545 |
net_rshares | 84,271,125 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
sparkeddev | 0 | 84,271,125 | 100% |
Staying relevant is very important. I'm not worries about other countries, just where technology goes and where I sit on the scale.
author | bitcalm |
---|---|
permlink | re-cryptovpn-re-bitcalm-5-reasons-to-always-be-coding-20160909t192310216z |
category | programming |
json_metadata | {"tags":["programming"]} |
created | 2016-09-09 19:23:09 |
last_update | 2016-09-09 19:23:09 |
depth | 2 |
children | 1 |
last_payout | 2016-10-10 18:53:42 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 131 |
author_reputation | 24,919,530,803,138 |
root_title | "5 reasons to always be coding" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 1,187,814 |
net_rshares | 0 |
I'd add to this: yes, competition is really good - that is, competing with yourself (your past self), getting better everyday. other type of competition may be less relevant.
author | cristi |
---|---|
permlink | re-bitcalm-re-cryptovpn-re-bitcalm-5-reasons-to-always-be-coding-20160910t123548341z |
category | programming |
json_metadata | {"tags":["programming"]} |
created | 2016-09-10 12:35:51 |
last_update | 2016-09-10 12:35:51 |
depth | 3 |
children | 0 |
last_payout | 2016-10-10 18:53:42 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 174 |
author_reputation | 128,305,218,872,904 |
root_title | "5 reasons to always be coding" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 1,195,320 |
net_rshares | 0 |