5 Replies - 1386 Views - Last Post: 27 April 2018 - 11:36 AM

#1 pretends2beAn00b   User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 2
  • Joined: 11-April 18

About to Graduate in a few weeks, but not confident in my programming

Posted 11 April 2018 - 08:21 PM

Hey everyone, I wanted to get your opinion. I am about to graduate in a few weeks but I am not 100% confident in my programming/coding skills. Yes, I will be graduating with a degree in Computer Science (BSCS).

There is a community college that gives programming certificates for Java, my school did not really go into detail on how to create Java beans, make Java Networking applications, I did take an Android development class, but the instructor sucked a$$ (no offence to him).

I have been thinking about taking 2 courses at a Community college in Java. One would be Advanced java, and another would be a course on Mobile and Enterprise Java. What are your thoughts? thanks!

Is This A Good Question/Topic? 0
  • +

Replies To: About to Graduate in a few weeks, but not confident in my programming

#2 modi123_1   User is online

  • Suitor #2
  • member icon



Reputation: 15363
  • View blog
  • Posts: 61,613
  • Joined: 12-June 08

Re: About to Graduate in a few weeks, but not confident in my programming

Posted 11 April 2018 - 09:33 PM

sure.. Take 'em.. And do extra reading.
Was This Post Helpful? 0
  • +
  • -

#3 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11689
  • View blog
  • Posts: 19,870
  • Joined: 19-March 11

Re: About to Graduate in a few weeks, but not confident in my programming

Posted 11 April 2018 - 10:22 PM

If you're just finishing up a BS, you've probably got plenty of material rattling around in your brain needing to be put to use. What I would think you need more than anything else, and especially more than generic courses like "advanced Java" would be to write an assload of code and see where you get stuck. Find a problem set that appeals to you (project euler, rosalind.info, codeeval.com, etc), and start working through the problems. Or if you prefer, start making small games (tic tac toe, bagels, nim) and work your way up to bigger ones. Or if that doesn't suit you, think of something that you would be interested in writing. The important thing, whatever you work on, is to start small and work your way up. In a sense, you're going to be inventing a lot of software engineering wheels, learning a lot of well known lessons the hard way because that's the only way anyone really learns them. So structure your work in a way that helps you learn those lessons. Review your code after you've written it. Does it look like something you're happy with? Do the names make sense? Is the style readable and consistent? If not, make some notes and either fix it now or leave the notes for yourself so you'll see them next time you open that file.
Try to write code that you can use again. Reduce duplication. Make small methods that do just one thing. All of that sort of stuff. If you haven't read Clean Code (Bob Martin) invest in a copy and make it your bible.

If you want to take a class or two as well, that's not a totally bad idea - but I believe you will learn ten times more from sitting down and writing code to solve a couple of problems every day than you will from a class, at this stage.

Quote

my school did not really go into detail on how to create Java beans, make Java Networking applications, I did take an Android development class


Don't get too worked up about particular technologies. You didn't learn how to create a java bean? Well, I've never done that but if I found it necessary to do so I would assume that this is a particular sort of class in java, and I know how to make classes in java. Little bit of research, and I see this on Stack Overflow:

Quote

A JavaBean is just a standard

  • All properties private (use getters/setters)
  • A public no-argument constructor
  • Implements Serializable.

That's it. It's just a convention. Lots of libraries depend on it though....


Okay, so you should be able to make those things happen. I'd be more interested in making sure you can reason about what this definition means and what it implies about the use of these objects. Read up on it, and then explain it to someone who doesn't know much about programming. If you can convey to them what problems this convention is trying to solve and how it solves those problems, then I'd say you're in good shape on the java bean front.
Was This Post Helpful? 2
  • +
  • -

#4 snoopy11   User is offline

  • Engineering ● Software
  • member icon

Reputation: 1556
  • View blog
  • Posts: 4,930
  • Joined: 20-March 10

Re: About to Graduate in a few weeks, but not confident in my programming

Posted 19 April 2018 - 11:51 AM

Yeah....

Build stuff lots of stuff....

Build database applications especially using a form of structured query language expressions.(sql)

Build a few simple games... ie platformers or shoot em ups

Build scientific and engineering programs.....

(You may have to borrow a few books from a local library for the above)

Networking Applications in Java there are loads of online examples of this kind of stuff. Perhaps make a 'Java chat application.'

But build stuff...
Was This Post Helpful? 1
  • +
  • -

#5 Skydiver   User is offline

  • Code herder
  • member icon

Reputation: 7141
  • View blog
  • Posts: 24,251
  • Joined: 05-May 12

Re: About to Graduate in a few weeks, but not confident in my programming

Posted 27 April 2018 - 11:21 AM

Excellent suggestions above... specially making sure to explore doing programs targeting platformers/shoot-em-up games on one end of the spectrum, database and forms business apps at another end, and scientific/engineering apps on the third point of the spectrum triangle. Each of them require focus on somethings that the other two would consider "bad practices", but recall that each of the focus points have particular goals in mind and have specific target audiences as well. Across all three points of the triangle, though, is good engineering practices that should still be used: good identifier names, reliance on self-documenting code instead of comments, good code organization, making code readable for the next guy who needs to maintain it, etc.

I can't find the quote now, but a martial artist earns his black belt through constant practice and learning, this is also how a novice programmer becomes an journeyman and hopefully a master.
Was This Post Helpful? 2
  • +
  • -

#6 jon.kiparsky   User is offline

  • Beginner
  • member icon


Reputation: 11689
  • View blog
  • Posts: 19,870
  • Joined: 19-March 11

Re: About to Graduate in a few weeks, but not confident in my programming

Posted 27 April 2018 - 11:36 AM

View PostSkydiver, on 27 April 2018 - 01:21 PM, said:

I can't find the quote now, but a martial artist earns his black belt through constant practice and learning, this is also how a novice programmer becomes an journeyman and hopefully a master.


I don't know if this is what you're thinking of, but I've talked about this with reference to my partner's kung fu studies. The important thing that I'd add is that the path through belts includes both learning and teaching. At Wu Dao, you are expected to help teach anyone two belts or more below your level, and to learn from anyone two belts or more above you, and the teaching is considered a crucial part of learning.
Most interesting to me is that black belt does not mean "nothing more to learn", it means "from here, you have to learn from your equals"
Was This Post Helpful? 2
  • +
  • -

Page 1 of 1