• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Devaka Cooray
  • Liutauras Vilda
  • Jeanne Boyarsky
Sheriffs:
  • Knute Snortum
  • Junilu Lacar
  • paul wheaton
Saloon Keepers:
  • Ganesh Patekar
  • Frits Walraven
  • Tim Moores
  • Ron McLeod
  • Carey Brown
Bartenders:
  • Stephan van Hulst
  • salvin francis
  • Tim Holloway

Need some general advice for a software noob.  RSS feed

 
Greenhorn
Posts: 3
Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hey I'm new here. I've been reading for while now but this is my first post.

I'm a hobby programmer and have a solid grasp on OOP now and I'd love to eventually turn it into my career.

I'm wanting to get some feedback from employed developers, so here is my question:


What do you know now that you wish you had known when you were starting out?
Also
If you have a junior developer working with you, what do you wish they were better at?

Thanks for any help
Steve
 
Bartender
Posts: 1983
59
Eclipse IDE Google Web Toolkit Java
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Steven Trippier wrote:
What do you know now that you wish you had known when you were starting out?


Honestly, nothing pops out to my mind from software point of view.


Steven Trippier wrote:
If you have a junior developer working with you, what do you wish they were better at?


I prefer a programmer who loves programming vs one who looks at it as a mere task
 
Marshal
Posts: 61777
193
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Steven Trippier wrote:. . . what do you wish they were better at?  . . .

Telling you about problems? Asking questions about problems? But not interrutping one's flow of work.
 
Campbell Ritchie
Marshal
Posts: 61777
193
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Steven Trippier wrote:. . . this is my first post. . . .

Welcome to the Ranch
 
author & internet detective
Posts: 38921
686
Eclipse IDE Java VI Editor
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Steven Trippier wrote: What do you know now that you wish you had known when you were starting out?


The importance of knowing basic idioms well. Google "code kata" to learn how to practice these.


Steven Trippier wrote: If you have a junior developer working with you, what do you wish they were better at?


It varies by person; there's not one thing that applies to everyone.
 
Sheriff
Posts: 12748
210
Android Debian Eclipse IDE IntelliJ IDE Java Linux Mac Spring Ubuntu
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I agree with the "know your programming idioms" advice. As part of that, I wish more novices boned up their skills on unit testing and simple design principles. At the very least, I wish they concentrated more on writing clear, expressive code.

Studying how to pick good names is not that hard but it's something you don't see many new or even relatively experienced developers caring about much. They tend to focus more on technologies and the nuts and bolts, not so much the craft of writing good software.

Study refactoring and code smells. Get better at recognizing when you have duplication and code that doesn't express its intent well. Study how to write clean code. Elegant code even.
 
Bartender
Posts: 1856
81
Android Chrome IntelliJ IDE Java MySQL Database
  • Likes 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I would suggest that you become aware of how whichever framework/programming language handles internationalization/localization.
While the project(s) which you would be working on may not require this at the beginning, it should be something you investigate before too long.
Not only that the next project for the next company that you work for may require it.

You may want to become somewhat familiar with some of the non programming terms/processes which many programmers use regularly such as:
  • Continuous integration
  • Dependency management
  • Project management
  • Code quality
  • Code review
  • Before you know it you may get dragged into a 'sprint' which in which some team members discuss 'Jenkins' and/or 'Gradle' and/or 'Maven' issues.
    Knowing a bit about these things may prove very helpful.
    Most likely other team members will know what these terms/processes are and can/will help you out as well.

    There are a number of tools/articles/discussions regarding these processes and tools relate to GitHub.com found here https://github.com/marketplace using "Categories".
     
    Steven Trippier
    Greenhorn
    Posts: 3
    Java
    • Likes 1
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Wow, thanks guys, great response. I've got quite a while left for studying as I've got 4 years of part time uni remaining.

    So I'll be sure to note downs and study up in all these areas. I'm well aware that doing something as a hobby and doing something professionally are 2 very different things. So all of you advice is very much appreciated.

    Thank you all very much
    • Post Reply Bookmark Topic Watch Topic
    • New Topic
    Boost this thread!