DEV Community

Ben Halpern
Ben Halpern

Posted on

Tell me a coding confession

What’s a habit or behavior you probably wouldn’t put on your resumé?

Top comments (101)

Collapse
 
abraham profile image
Abraham Williams

I Google almost everything because I don't remember the APIs, just that there is a way to do it.

Collapse
 
rhymes profile image
rhymes • Edited

Collapse
 
dance2die profile image
Sung M. Kim

Seems to work out for many React ⚛ devs.
And that's what's recommended by Dan Abramov 😛

click on the link in Dan's tweet

Collapse
 
tkeeney profile image
Terry Keeney

I'm with you on this one...
I've been working in a particular platform so long that I've recently began to wonder if I actually still know how to code or whether I've just become particularly skilled at rearranging various snippets of code.
Whatever it is - the one thing I know for sure - I'm reasonably gifted at articulating my problem in a way that I can (usually) find the StackOverflow answer to solve the problem

not sure i know how to code

Collapse
 
gregorgonzalez profile image
Gregor Gonzalez

Same! Google driven development

Collapse
 
dasanil profile image
Anil Das • Edited

Hah. Everybody does this, so much so that Google actually put in a recruitment ad for people searching certain programming related queries.

Collapse
 
bizzy237 profile image
Yury

I rely on my IDE autocomplete so much I sometimes forget the standard library

Collapse
 
yorodm profile image
Yoandy Rodriguez Martinez

That's why I have like a ton of docsets in Zeal

Collapse
 
tomhermans profile image
tom hermans

That's not per se bad. Knowing a solution exists and looking it up is way better than solving a problem you shoudn't have to

Collapse
 
sduduzog profile image
Sdu

I'm scared of contributing. I'm afraid of finding out that I'm incompetent so when I challenge myself to find a project to contribute to, I end up scrolling on github until I run away. Dare try to talk me into any, I have more excuses than gifs in @ben 's portfolio 🤣

Collapse
 
ben profile image
Ben Halpern

That was me for years, and now all my code is out there for the world to see. 😳

Collapse
 
molly profile image
Molly Struve (she/her)

This was totally me a year ago then I found some things I REALLY needed fixed in a few gems and that is what pushed me to finally do it. That first PR was SO stressful but I did survive and it has gotten a lot easier 😊

Collapse
 
rhymes profile image
rhymes

Stop scrolling, contribute to dev.to! :-)

Collapse
 
sduduzog profile image
Sdu

Do I need ruby to do so? I'd need to brush up on it a lot

Thread Thread
 
rhymes profile image
rhymes

The backend is in Ruby and Rails, the frontend is in HTML/CSS/JavaScript/React/Preact. The documentation is in English :P

Thread Thread
 
link2twenty profile image
Andrew Bone

You could submitting a bug report, submit a feature requests or reading over other pull requests to make sure they make sense and that still counts as contributing 🙂

Thread Thread
 
sduduzog profile image
Sdu

I think with also this approach, I'll understand the 'why' . The 'how' is always the easiest

Collapse
 
bhupesh profile image
Bhupesh Varshney 👾

Happens with me a lot 😅😅

Collapse
 
wolfhoundjesse profile image
Jesse M. Holmes

I console.log() things more often than setting a breakpoint and hitting the debugger. Working on it.

Collapse
 
cjbrooks12 profile image
Casey Brooks • Edited

There's nothing wrong with println debugging! While breakpoint debuggers are a great tool, it is really hard to use them well in async code, which is where good logging is an absolute must! And sometimes, it's just faster and easier to print logs instead of stepping through line-by-line

Collapse
 
gregorgonzalez profile image
Gregor Gonzalez

the old reliable!

Collapse
 
molly profile image
Molly Struve (she/her)

I never practice TDD, I always write tests after I write the code. It just seems faster and easier 🤷

I also am not great with linux, I have to google simple command line commands all the time. I'm working on it though!!!

Collapse
 
ben profile image
Ben Halpern

TDD is incredibly unintuitive and the majority of developers do not use it.

It is a great skill to eventually take to IMO. But there’s no rush. It’s someyhing worth casually nibbling on until you find places it really clicks.

Collapse
 
andrerpena profile image
André Pena

TDD only comes natural to me when it actually improves my productivity, which happens around 10% of the time.

TDD is helpful when you are writing pure functions which the result is predictable. For example, if you are writing a function that uses Regex to transform a string, it is much easier to TDD it until it works than running your entire system on every change until it works.

Collapse
 
rhymes profile image
rhymes

I do hybrid testing, mostly after, sometimes TDD

I used to preach it but like all methodologies, it doesn't work all the time and requires a lot of discipline.

It's probably counter intuitive but I did a lot more TDD when I was a total noob, now I trust myself more. I have a mental map of most of the tests I have to write for the feature I have. If they are too many I write them in the ticket or a text file or whatever.

I think TDD shines with refactoring, more than for new features

Collapse
 
alexayala profile image
Alex Ayala

I usually write my code first, add unit tests for new features/bug fixes, and then rely on my code coverage tool to tell me where I need to have more tests.

Collapse
 
emmabostian profile image
Emma Bostian ✨

Half my commit messages are "git commit -m 'Doing stuff'" :D

Collapse
 
jackharner profile image
Jack Harner 🚀

git commit -m "random shit"

git commit -m "i don't even know"

git commit -m "stuff"

I'm in the same boat.

Collapse
 
vikigodparticle profile image
Vibek Dutta

Hahaha! So you've been doing just Frontend huh?

Collapse
 
david_j_eddy profile image
David J Eddy

I don't understand functional programming.

Collapse
 
jdsteinhauser profile image
Jason Steinhauser

I've been preaching functional programming for several years now, and I still don't even grasp all the concepts.

Collapse
 
rhymes profile image
rhymes

FP is hard!

Collapse
 
rhymes profile image
rhymes

I think if you go down the rabbit hole of CSP, monads, combinators than it really gets trick but the basics are simpler than some people make them to.

You don't need to have a "pure" functional language to take advantage of it.

Use functions without side effects, pass functions as arguments (you do this all the time if you work with JavaScript and callbacks), envision your code as a series of composable operations instead of telling something to change state.

It's perfectly fine if you don't do it all time, or ever :D

Chances are you're already doing without knowing it.

Collapse
 
kspeakman profile image
Kasey Speakman

We (FP programmers) are great at making it not very understandable.

Collapse
 
tvanantwerp profile image
Tom VanAntwerp
  • I use GitKraken instead of command line git. I just like being able to visualize everything I'm doing at a glance. And no fat-fingering risk.
  • I still just console.log() stuff.
  • I never write tests. 99% of the time, I'm solo'ing it and making something relatively small and uncomplicated, so I just don't bother with it.
  • I will definitely press up in the terminal 20 or 30 times to avoid typing a long command again.

You know, none of that was too bad. I feel like less of an imposter writing it out. 😊

Collapse
 
david_j_eddy profile image
David J Eddy

Run

git config --global alias.tree 'log --graph --full-history --all --color --date=short --pretty=format:"%Cred%x09%h %Creset%ad%Cblue%d %Creset %s %C(bold)(%an)%Creset"'

Then

git tree

The Git built in CLI visualizer for git history. :D

Collapse
 
phallstrom profile image
Philip Hallstrom

Regarding the terminal... get fzf and integrate it into your shell. Then you can type CTRL-R and fuzzy search your history! Super great.

Collapse
 
cjbrooks12 profile image
Casey Brooks • Edited

I'm pretty bad at asking questions. I'm definitely more comfortable digging through the mire of docs and source code than reaching out for help.

Collapse
 
molly profile image
Molly Struve (she/her)

I still feel like my dev lingo knowledge is 2 years behind my actual knowledge and every time I am talking to someone I will never stop and ask what a word or abbreviation means. Instead I make a mental note, then after the conversation sit on google for 5 min figuring out what they just said and having ah-ha moments 😂

Collapse
 
gregorgonzalez profile image
Gregor Gonzalez

I think "I could ask but I need to do this by myself" and then I waste hours searching. I don't want to bother others when they are busy

Collapse
 
ex_jedi profile image
Mårk Phoenix

I do this. I worry about whether not knowing an acronym will make me look stupid.

Collapse
 
ben profile image
Ben Halpern

I used to be reaaaaallly bad this way. I’ve become more comfortable asking questions over time.

Collapse
 
kspeakman profile image
Kasey Speakman

I spend way too much time thinking of every edge case and how things will scale. That tends to slow down my coding tasks. And I have a lot of coding work on my plate.

Collapse
 
lloople profile image
David Llop

I joined this year's Advent of Code but it's being pretty hard for me since day 3. I'm very good making websites, CMS, API's, objects/models, tests, all that stuff... But I suck at simple math operations or simple problems without objects 😭

Collapse
 
ben profile image
Ben Halpern

I’ll start:

  • I still kind of suck at git
  • I tend to ignore my linters

Things I continue to work on, but not my best coding qualities. 😋

Collapse
 
ondrejs profile image
Ondrej • Edited
  • I do not do git rebase as often as I should
  • I do not commit often enough (usually once for big chunk of work)
  • I tend to find every minor security issue (i.e. possible attack vector) and have a long discussions about it with my team
  • Sometimes I am "It works on my machine" guy and require more evidence / documentation about potential bugs
  • And in the end....I could really be a better developer :/
Collapse
 
ben profile image
Ben Halpern

I’m a safe and cautious git user and I tend not to mess things up too badly. But I rarely have a good idea of how to get out of a mess without too much collateral damage.

Thread Thread
 
ondrejs profile image
Ondrej

I sometimes have tendencies to push to origin/master...which is, sadly, locked.... but by me, haha, so when I'm on the roll, nothing will stop me!

Collapse
 
kspeakman profile image
Kasey Speakman • Edited

I'm with you linters. I tend to get annoyed by them. They often lead devs to focus on really pedantic problems. With linter indoctrination, you'll be looking at another dev's code and think "Oh they used an if statement to assign a nullable value instead of a ternary statement. They should fix that." Instead of "the overall maintainability of this code looks good."

Collapse
 
yorodm profile image
Yoandy Rodriguez Martinez
  1. I hate the whole Javascript tooling (the fact I'm doing a lot contract work as a Fullstack Developer doesn't help).
  2. Sometimes I miss Java.
  3. I don't like Bootstrap.
Collapse
 
david_j_eddy profile image
David J Eddy

Swap #2 for a language everyone likes to hate and I'm right with you. :)

Collapse
 
jackharner profile image
Jack Harner 🚀

COBOL?

Collapse
 
yorodm profile image
Yoandy Rodriguez Martinez

If you hate Perl too then we should create a Foundation or something

Collapse
 
nickjj profile image
Nick Janetakis

A single 4,751 line PHP file with mixed PHP, MySQL, HTML, CSS and JS is currently running in production for the last 12ish years on a shared hosting service.

The thought of maintaining this app scares the shit out of me, but luckily it's been running smoothly all this time.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I can't code unless my text editor has a blue background.

Collapse
 
andy profile image
Andy Zhao (he/him) • Edited
  • I hear and say "that's a great candidate for TDD" and never TDD it.
  • I have a tendency to want to work on smaller, less significant things.
    • Sometimes I make mountains out of molehills. 🙈
    • This also makes it hard to see the forest instead of the trees.
  • I force push A LOT, and rewrite my git history A LOT -- usually with git commit --amend. Less so now that GitHub shows force pushes. 😬
  • I tend to do things manually more often than spending the time to automate them.
Collapse
 
david_j_eddy profile image
David J Eddy

No shame in --amending; also no shame in re-writting the history...just don't do it after pushing to a remote :fire_eyes:

Some comments may only be visible to logged-in visitors. Sign in to view all comments.