Well, I doubted in java now. I have looked for job offers etc on some sites, and there is a lot of offers for php, html, js, css, graphics ets. Some for c,c#,c++ etc. And some less for java...

Can someone give me some example what can be written in java?
To be precise, I want something like:
- Software on your dvd was written in java.
- Spotify was written in java.
- some big apps that aren't popular for normal computer users was written in java(for example xx app used by milions of companies related to bookkeeping).
- etc etc

For now I know that android apps are made in java.
Beside that, some applets and apps that no one ever uses as simply user.
Applets doesn't have place in web today. And apps? I think almost everything I used wasn't written in java... But maybe I'm wrong?

And one, or two more things.
What about companies? Why they need java developers? Ok, maybe company need android app. But what else can it be? How advanced programming looks like? Well, these questions aren't important, especially if I can get some examples in previous one.

And what about learing? What is better to fit labor market? Some studies or certificates? Who will be chosen first? Someone who has finished for example 4 years studies, or someone who didn't studied, but got some certifications in programming and learned everything on his own or on some courses only?
I don't like teaching program in schools. Especially if we process some part of material for 6 months, if it can be done in 1 month... And I just want to know if it does any sense to go other way.
And with certificates, I thing about that for example:All Certifications | Certifications | Oracle
Or something else if it isn't useful.

04-23-2014, 04:50 PM

gimbal2

Re: What is written in java?

Java rules on servers, not on clients. And no, Android apps are not made in Java. They are made with the android development kit, which just happens to utilize an outdated version of the Java language. But not the tools, not the JDK, not the virtual machine.

Other than that the only limit is the programmer, not the technology. You can do whatever you want with it, but the Java platform is not always the right choice.

04-23-2014, 05:06 PM

KevinWorkman

Re: What is written in java?

Quote:

Originally Posted by Nozz

Well, I doubted in java now. I have looked for job offers etc on some sites, and there is a lot of offers for php, html, js, css, graphics ets. Some for c,c#,c++ etc. And some less for java...

There should be a rule somewhere that states that whenever you're looking for a job, the only jobs you'll find are ones that require skills you don't have. It might seem like there aren't any Java jobs, but that's just because you're looking for them. There are plenty of Java jobs, in fact, it's one of the most popular languages.

Quote:

Originally Posted by Nozz

Can someone give me some example what can be written in java?
To be precise, I want something like:
- Software on your dvd was written in java.
- Spotify was written in java.
- some big apps that aren't popular for normal computer users was written in java(for example xx app used by milions of companies related to bookkeeping).
- etc etc

Many of the most popular websites you use every day were written with Java EE. The server-side technology isn't something that's broadcast though, so it's hard to say for certain who uses what.

Quote:

Originally Posted by Nozz

For now I know that android apps are made in java.

Although gimbal2 is correct in that Android doesn't use the JDK, I think it's safe to say that Android is a big part of Java's future.

Quote:

Originally Posted by Nozz

Beside that, some applets and apps that no one ever uses as simply user.
Applets doesn't have place in web today. And apps? I think almost everything I used wasn't written in java... But maybe I'm wrong?

Sure, applets are mostly dead. But I would bet that you use Java apps without knowing it. Many apps package up a JRE with themselves so you don't even know you're running Java. JEdit, Netbeans, and eclipse are a couple examples.

Quote:

Originally Posted by Nozz

And one, or two more things.
What about companies? Why they need java developers? Ok, maybe company need android app. But what else can it be? How advanced programming looks like? Well, these questions aren't important, especially if I can get some examples in previous one.

You're forgetting Java EE, which is a huge portion of the Java job market. Try looking at Spring, a Java EE framework that is very commonly used and VERY in demand right now.

Quote:

Originally Posted by Nozz

And what about learing? What is better to fit labor market? Some studies or certificates? Who will be chosen first? Someone who has finished for example 4 years studies, or someone who didn't studied, but got some certifications in programming and learned everything on his own or on some courses only?
I don't like teaching program in schools. Especially if we process some part of material for 6 months, if it can be done in 1 month... And I just want to know if it does any sense to go other way.
And with certificates, I thing about that for example:All Certifications | Certifications | Oracle
Or something else if it isn't useful.

This is going to depend entirely on you, your location, your interests, your strengths, etc. Do whatever is interesting to you instead of trying to follow where you're guessing jobs are. Where I'm from, certificates are useless and a 4-year degree is pretty much required. Other places might be different.

But the bottom line is that you have to have an actual interest in this stuff, or you aren't going to get very far. You ask who is going to get the job first, and I would argue that somebody who can show me stuff they've done in their spare time for fun is going to get a job much faster than somebody who has only done the bare minimum required to land a salary.

04-23-2014, 05:26 PM

Nozz

Re: What is written in java?

Quote:

Do whatever is interesting to you instead of trying to follow where you're guessing jobs are.
But the bottom line is that you have to have an actual interest in this stuff, or you aren't going to get very far. You ask who is going to get the job first, and I would argue that somebody who can show me stuff they've done in their spare time for fun is going to get a job much faster than somebody who has only done the bare minimum required to land a salary.

Well, this is actually why this topic happened.
I'm interested in programming overall now.
I touched some pascal, c++, java, php(with css, js, html)... And I wan't to choose one that fits my needs.
If I don't know what can I write, I can't decide which language I want to learn.

So, if java is server-side technology mainly, not client side... This make me think.
I don't know what I really want to do...

I think I like usable client side apps. So maybe c++ or something? But is it sensible?
Or maybe android apps, games, or no games? Second thing for me.
I can consider java, because I know it best now I think(most time spent here and most things written in java). Maybe server-side things will interest me, but I just don't know them?
Can you help me to choose?
I want to best utilize the coming years. 1,5-2,5... Or even 5,5 if I choose to make 4y degree?

04-23-2014, 05:45 PM

superhaNds

Re: What is written in java?

@Nozz

In most cases, one is required to have a degree of the field (computer science or something related) for employment.

I am in my last year is CS and I will continue for a masters. I don't think that will make me so much better, the real reason is probably avoiding responsibilities and facing the real world.
In these studies however, they teach and build foundations. This is the purpose of such a degree. Not specialization, but tools and mindset to adapt to different environments. Reading on your own
and not just to 'pass the course'. You can't learn one language or a framework/whatever very well and expect to be employed under this. It's not just about knowing java, it's about being able to work with the OO paradigm.
People I know that were employed with hopes of working in the language they learnt had to immediately learn a new one. It's just how it is.

Web programming is popular and will increase even more and I think it's a fair path to follow. Specifically about java, everyone loves to hate it and claim that it is dying. I like it.

My advice for you would be to pursue a higher degree, certificates don't matter as much.

04-23-2014, 06:41 PM

Nozz

Re: What is written in java?

Quote:

In these studies however, they teach and build foundations. This is the purpose of such a degree. Not specialization, but tools and mindset to adapt to different environments. Reading on your own
and not just to 'pass the course'. You can't learn one language or a framework/whatever very well and expect to be employed under this. It's not just about knowing java, it's about being able to work with the OO paradigm. People I know that were employed with hopes of working in the language they learnt had to immediately learn a new one. It's just how it is.

This is one of the best things that someone told me. Really.
But still. If you know a little bit of everything, you don't know anything. Its better to know one thing better...
And I looked at some job offers. In every single one there are specific things that are required.
Well, I don't know what most of them means. But if I see pointed specific things like hibernate or Apache Jackrabbit or something... How can I learn everything? I can't. So how could I apply for job if I don't meet requirements? And if I know only one(few) specific thing I can apply for jobs that requireme what I know...

I think that things I would made are:
1 year from now - Finish school.
1-few months - Try to find job where I live. If it is enough for me, well, nothing to do. If I don't find any...
1-few months - Try to find job somewhere else. If it is enough for me, well, nothing to do. And if its not enough...
3-5(?) years - Get degree? But where? My country? UK? Maybe deutschland? I think about uk at first place.

And if I realize this plan. What should I do beside this? How to utilize my time to get better?
It is at least 1 year of doing almost nothing. I wont waste this time.

And one more thing. What you thing about portfolio(related to this topic ofc)?
Is it good to make some kind of portfolio and put every sensible thing I create in it, so I can show it later with job application?

:@:
Why is it all so complicated?
Maybe I just care too much?
Maybe its because I live where I live, and its hard here to find good job to afford... life? So I want to be as good as I can?

Anyway. This isn't longer topic about java, but about life choices... We good?

04-23-2014, 07:26 PM

superhaNds

Re: What is written in java?

Where are you from and how old are you? The degrees are either 3 or 4 years. In UK it's 3 and mine.

Of course you will need to learn specific 'things', you must choose a path throughout your studies and focus on it. The advantage you will have is that it will be something you like and who knows,
with new things you will learn you might pick up something that comes to you naturally and want to work with it.
This is the concept. If you have strong foundations having done a degree in CS, because some things really need to be taught in classrooms, you will be able to learn at an amazing pace.
It is so complicated because people like to give complexity to stuff, it makes them feel important (my new platitude).

You will be taught OOP, design etc. and a language will be used as a tool obviously, but they do not want you to learn just 'insert your programming language here' programming, rather the concepts.
And trust me, you will be able to understand other OO languages and learn them faster. I managed to dive into python fast. (except functional programming, *geniuses only)

04-23-2014, 07:30 PM

KevinWorkman

Re: What is written in java?

Languages are like tools. You wouldn't ask "which tool should I learn, a saw or a hammer?" - you have to be familiar with them all. Maybe you use the saw more often because you do a lot of woodwork, but you have to be willing and able to pick up a hammer if the job requires it.

Java itself is a collection of tools. Java client side, Java EE, threading, deployment, Android, the list goes on. You can't limit yourself to just one and expect to get a job.

That being said, the best way to become familiar with different tools is to just START USING THEM. That's why I said you should focus on stuff you find interesting. You mentioned client-side programming, so maybe you create a Swing application. Maybe you want it to look cooler, so you then move on to JavaFX. Then maybe you want your application to load from a database, so you pick up some of that kind of programming. Next you want to create a website for your application, so you maybe pick up GWT or Java EE. Then you want to add an Android app to your program, so you dive into that.

Then a potential employer will ask you whether you're familiar with database programming, and you can say "sure, I've worked with it, and HERE IS HOW." That last part is important. That's where a portfolio comes in handy- it's your chance to showcase what you've done. What are you interested in?

Honestly, it seems like you're getting ahead of yourself. You need to walk before you can run. Stop worrying so much about how you're going to make money, and just explore what's most interesting to you. If the most interesting thing about programming to you is how to make money, you're going to be miserable and get replaced by somebody who spent a year just playing around and learning naturally.

04-23-2014, 07:52 PM

Nozz

Re: What is written in java?

Quote:

Where are you from and how old are you?

Poland.
19.
In 12 months from now I will finish school. I lost a year by choosing 4 year instead of 3 year school... But, was it lost? I don't know. Now I started thinking and learning something useful. So I have this one more year to work on this. And I don't know what would I do now if I would choose differently...

Quote:

you must choose a path throughout your studies and focus on it.

I was treating it like it was now... But what I can see, is that, my thoughts was little wrong.

Quote:

That being said, the best way to become familiar with different tools is to just START USING THEM. That's why I said you should focus on stuff you find interesting. You mentioned client-side programming, so maybe you create a Swing application. Maybe you want it to look cooler, so you then move on to JavaFX. Then maybe you want your application to load from a database, so you pick up some of that kind of programming. Next you want to create a website for your application, so you maybe pick up GWT or Java EE. Then you want to add an Android app to your program, so you dive into that.

Thats exactly what I am doing now... Just on some more basic, but everyone have to start with something :D
The problem is that now when I tried few languages I started thinking... And I shouldn't think, just do what I was doing...

Anyway. I think thats all. Some things I learned here, maybe it will help me somehow :)
Thanks to you guys for everything.

04-23-2014, 08:02 PM

JosAH

Re: What is written in java?

Javac (the Java compiler) itself is entirely written in Java (so it can compile itself).

kind regards,

Jos

04-23-2014, 08:10 PM

kneitzel

Re: What is written in java?

Hi Nozz,

first it is great that you are interested in software development.

I think you have a wrong picture what is going on "in the market".

In my eyes Desktop Applications are more or less dead right now. The reason for this is quite simple:
- Deployment is simply expensive. (In companies people do not simply install software. Either an administrator is doing it manually for you or you have a software distribution system which means that software needs some packaging and a software rollout process. That simply involves costs. So at least bigger companies do not like it. And this does not include all the new virtualisation technology that is comming in big steps e.g. Application virtualisation or Virtualisation of Desktops which all need administrative support.
- Microsoft which provides the main desktop system is moving away. One important sign in my eyes is that the Help system is dropped. Desktop applications often have a help system. There was a community around this because Microsoft never provided good tools for this. Microsoft has a system where good community members became "MVP" Microsoft Valuable Professionals. The MVP Help no longer exist because Microsoft believed that it is no longer required. (So only the new Windows style apps should be build. I think they are crazy but who cares ...)

On the other side you have the so called Web Applications. They got stronger and stronger. One important thing is HTML 5. But it is even enough to check jQuery. There are frameworks that helps you to build real applications inside the browser. Where data is on a backend system. Right now I would say that THIS is the future for normal applications.
One area are games. I think that game development will always be best on real devices. So yes - if you want to be active inside game development, then you should learn C++. And only C++. No Java. No C# (That was an alternative with XNA Gamestudio but Microsofts strategy changed and they switched back to c++!).
But even Game development is done inside the browser. I am amazed what kind of games are available that should run inside the browser.
The big advantage of browser related stuff is that it is quite easy to maintain. You simply update the servers and there is no need to touch the client.
The technology behind is really mature and advanced. So you have no problems setting up clusters so you could provide high loads.
In the past the network speed was critical but today network is cheap and really fast (compared to the situation in the past).

So when you do not want to be system specific (e.g. working on windows and building system stuff), then java is really fine. I do not see anything that you couldn't do. And even if you want to build an "desktop application": Just do it. Java can do it.

Just a few words about my job:
I am earning my money as .Net developer.
- We have a few things that are really system related. But that are just a few small tools and they are not that important. (In the past we had our own software distribution system but that was dropped a year ago).
- We have to build web-sites that include reports or business related frontends. We use ASP.Net MVC in this area but using java would make no real difference.
- We have some backend servers. These are some simple windows services but they could have been part of the system that is also hosting the web application.
So for 95% of all I am doing it would not make any difference.

==> So there is no reason to not use Java and switch to some other technology like .Net or C++! (Only when you want to do real system stuff, then C++ is required in my eyes!)

Regarding your situation:
I understood that you still go to school. Just try to get more practice in programming. It does not matter what language you use. if you use Java right now: stick to it. Try to make a few applications. Try to write clean code. Maybe look at unit tests. Just play around and try to get experience.

When you finished school, you will look for a job. You will get a job as a junior software developer. I can just tell you what is important in our company when we look for someone for such a position:
- He must be willing to learn. (A junior software developer must learn almost everything! So if you really want to learn! And you should show that you do not have problems to understand something!)
- You must be able to listen. (It is important. You have to listen what people tell you.)
- You must fit into the team. (So are you friendly? Can we even chat nicely with you? We always go and drink a coffee outside the office for this important step!)

Of course: If you really tried to build clean code you could provide some example code. Would be a great thing in my eyes. Then we could do some code review and see how you react in such a case.

But please keep in mind: You apply for a junior software developer position. Nobody expects years of experience. Nobody wants to see a professional Java project with swing. And we will not ask you about some common pitfalls to see if you really have the experience....

And a last important thing: If you really want to be a software developer then you have to learn all your life. I don't know what comes in a few years but there will be a lot of things. In my life I saw a lot of changes:
Procedural development with C, Object Oriented Development with C++, Stuff like "Booch Method" before UML came, agile development with things like SCRUM or Pair / Extreme Programming. And now all world is talking about "Continous delivery" ... Just to show you that the whole world is moving.
And of course you use some products and you get new versions all the time ...

We have a books24x7 subscription and when we got a new colleague he got a list of like 20 books that he could read. The situation is crazy. Even I am running behind because I want to read a few books, too. But there is simply not enough time for it. So I concentrate on the important things. So right now I read a book about clean code (something that everyone should do ... and repeat it multiple times! You will always find new things or get a reminder!) and about spring (I am switching my private development to java at the moment).

Now all this got quite long. I hope I was able to give you some useful information. Don't be afraid. If software development is fun in your eyes (a hobby) then I can only encourage you to do it. It is quite likely that you will get a job. And you also have a chance that you have fun while doing your job. (But don't be angry if not. Bosses have a special talent to take away fun ... at least in bigger companies :) But it doesn't matter what your job is. Even playing a game you like wouldn't make fun as a job :) )

With kind regards,

Konrad

04-23-2014, 08:45 PM

gimbal2

Re: What is written in java?

Quote:

Originally Posted by KevinWorkman

Although gimbal2 is correct in that Android doesn't use the JDK, I think it's safe to say that Android is a big part of Java's future.

Oh absolutely, but then more because of tools and frameworks that will target both the Java platform and the Android platform.

Quote:

Originally Posted by JosAH

Javac (the Java compiler) itself is entirely written in Java (so it can compile itself).

That might sound interesting, but its nothing new of course. C++ compilers are also built with C++ compilers ;) I can imagine that at one point in time someone compiled a C++ compiler which had vastly improved optimization routines built into it - and then recompiled that very compiler using itself to get a more optimized compiler. Blows my mind.

04-23-2014, 08:49 PM

KevinWorkman

Re: What is written in java?

Quote:

Originally Posted by gimbal2

Oh absolutely, but then more because of tools and frameworks that will target both the Java platform and the Android platform.

Pretty cool to see what stuff like libGDX is doing: deploys to Android, desktop, and the web through html5. I think/hope that's the way of the future with client-side stuff: languages that are truly agnostic about where they're being deployed.

I've also seen JavaFX deployed to Android, but I don't think that's an "out of the box" thing yet. Fingers crossed...

04-23-2014, 08:50 PM

Nozz

Re: What is written in java?

@kneitzel
Thank you for your post. Its also helpful, made me feel better and calmed me down a little.

Quote:

Of course: If you really tried to build clean code you could provide some example code. Would be a great thing in my eyes. Then we could do some code review and see how you react in such a case.

I tried to get some reviews, but it wasn't active topic. Anyway. This code has now just few little changes, because I dropped this project for the moment to do something else. Maybe I will do something more with it, maybe not. But there it is. Most of that what I know about java now. And I think I need to improve some things in it. Comments for sure, I really have no idea what should I comment and how, and whole project build maybe... Also some loops in some places, if it is possible somehow.
For now, I am waiting for some responses in this topic. Even if these won't come. And I working on few more projets(2 currently, and 2 in plans). Maybe in close future I will create my theard with all codes I write and start counting on people so they can help me. Or maybe some kind of blog like "from zero to hero : programmer editon", idk :P

04-23-2014, 08:55 PM

gimbal2

Re: What is written in java?

Quote:

Originally Posted by Nozz

@kneitzel
Thank you for your post. Its also helpful, made me feel better and calmed me down a little.

Tools, platforms and development fads come and go, that's just the way it is. In my short time in this business I've seen software go from everything on the client to everything on the web to everything on mobile devices.

The one true constant that should give you peace of mind now and forever is that -you- will one day be an awesome programmer who learns a new programming platform in a matter of weeks and can read any code written in a language that he is not at all familiar with. I am willing to bet that Java is not going to be your partner forever or even many years, but the knowledge and experience gained while using it will stick with your forever.

04-23-2014, 08:58 PM

JosAH

Re: What is written in java?

Quote:

Originally Posted by kneitzel

Including completle new concepts e.f. functional programming

Small nitpick: functional programming already existed (and was quite popular on the planet where I came from) in the 60s in the previous century ...

kind regards,

Jos (<--- dinosaur)

04-24-2014, 12:00 AM

kneitzel

Re: What is written in java?

Hi Jos,

You are correct: the functional programming is quite old. But now it is included into the traditional object oriented developer world. Microsoft introduced F# some time ago and this is something that will hit other languages, too.

So there is always something new. Some time ago I would have mentioned aspect oriented development ... And I am wondering what the future will bring us...
(And I am also a dinosaur :) )