Announcements Last Post
Announcement SoC Curricula 09/30/2017 01:08PM
Announcement Demarcation or scoping of examinations and assessment 02/13/2017 07:59AM
Announcement School of Computing Short Learning Programmes 11/24/2014 08:37AM
Announcement Unisa contact information 07/28/2011 01:28PM
Anonymous User
Java developers wanted
November 22, 2006 10:24AM
Acachi Technologies in Kloofendal, Johannesburg is looking for junior/intermediate developers, graduates with no experience welcome.

We design build and operate touch screen vending machines fitted with gprs modems. Most development is done using java on a linux and mysql platform, so experience with them would be beneficial. Some web development is done but we are not looking for pure web developers.

Job responsibilities include design, coding, testing, and some support eg. remotely logging in to a machine to find out what's wrong or maybe even installing a vending machine if the need arises.

Please specify your relevant skills, rate them and separate your learning experience with real world experience.

Salary: 8k-15k per month cost to company depending on experience and skills.

Please send cv's to: agalma@netactive.co.za or zavisagie@yahoo.com
Re: Java developers wanted
November 22, 2006 03:27PM
come to Cape Town god dammit ;/
Re: Java developers wanted
November 24, 2006 08:04PM
I am just curious as to why you guys use MySQL with Java? I imagine that using Java as a frontend to a MySQL database would be quite complex due to access via the MySQL JDBC driver. Would it not be more feasible to use a "pure Java" database e.g: Apache Derby or HSQLDB? Not only are these databases more "lightweight", but it would also make coding far easier (plus they are free even for commercial use!!!). I am not sure how your databases are deployed or used, but if it is the way I am thinking, you are liable for purchasing commercial licenses for MySQL which I might add are really expensive (please confirm this by reading the +- 10 page license in the MySQL distribution)! However if you do have a significant investment (in terms of skills,resources,finances ...) for using MySQL, I would recommend using PHP instead of Java. PHP is almost always the first choice when using MySQL and MySQL is easier to maintain and code thorough PHP. Again I am not sure as to how much data you guys deal with, but I am guessing that it can't be too much. Finally, I am not sure if you have heard of "LAMP" i.e: Linux, Apache (webserver, Tomcat etc..), MySQL, PHP (although these days it is often replaced with Perl/Python) ? LAMP is an industry proven development platform for building high quality enterprise information systems (note: no Java!). Maybe I am misintepreting you- are you using Java as in J2ME (consumer electronics) or Java as in J2SE/J2EE ?

Regards
Anonymous User
Re: Java developers wanted
November 25, 2006 09:32AM
Maybe you should consider first asking questions before giving answers.

Our vending machines are not embedded systems, but are operated full p4 pc's. If you've used hsql you would know how little predefined function support it has, we don't have time to go writing date time functions etc. We have a server database on mysql with a couple of table with between 1 and 5 milliin records. No I won't be using hsql.

Onee of the best open source reporting application is openreports which is written in java and supports mysql. Much better than creating all from scratch on lamp.

Anyone interested in the job applications please note that we have good reasons for using our tech stack and it is not a niche thing, many are working on this kind of platform, so it is good experience.

With Java on the brink of being open sourced, linux and java are going to be meshed a lot more.

thanks
zach
Re: Java developers wanted
November 25, 2006 09:25PM
Maybe you should read and understand what I am trying to say instead of merely justifying yourself. Anyway I dont want to turn this into an overly technical thread. But you are right, Java and Linux are great skills to acquire and there are lots of promising emerging technologies e.g.:AJAX based on them.

Regards
Re: Java developers wanted
November 28, 2006 03:37PM
*punches the wall*
Anonymous User
Re: Java developers wanted
November 30, 2006 02:20PM
when I learnt java, the db we used was mysql - and they let us use that cause at that time (who know how things are now), it was the easiest to use... (an of course its free)
Re: Java developers wanted
December 05, 2006 04:48PM
I'm wondering why LAMP (Or any platform for that matter) was raised as an alternative dev platform.

My question really is how did 34898425 reach the point of architectural/design suggestion when the problem set we're presented here with does not even mention in enough detail what is expected of these vending machines' software?

Another issue raised for example is the use of JDBC. How do you arrive at this architectural criticism? If the problem space is not defined, how do you know what pattern or framework the group's applications aim to follow?
Re: Java developers wanted
December 05, 2006 09:50PM
Ermm look, zach mentioned MySQL, Java, GPRS modems- I think anyone could conclude
(significant expectations/functions) :
(1) that the front end for data processing/collection is coded in Java;
(2) the software connects to a remote client (vending machine)
(3) the software collects and stores info from the vending machines to a MySQL
database.

As for my suggestion of LAMP:
(1) PHP programmers are cheaper than Java programmers
(2) PHP could be used for the front-end (PHP these days regarded as a capable
"multi-purpose language" - not only for web apps)
(3) Because of (1) & (2) you can cut your costs by using the same team of
developers for web design/programming.
(4) There are more open source tools aiding PHP-MySQL development, while
Java-MySQL code generators are often commercial (and expensive!)

JDBC:
(1) I'm not sure of new releases of MySQL, but a few years ago the only way to
access MySQL databases were via a "JDBC type" driver. Our Java programmers
experienced great difficulty and the overall performance was non-optimal.
In the end we had to switch to Oracle & PL/SQL.
(2) MySQL is not written in Java so there is obviously an overhead. Native Java
databases such as Apache Derby/HSQLDB (while not as featured or powerful as
MySQL) gives you a slight edge in terms of speed and efficiency. But as zach,
pointed out before that these databases "suck" for the simple things.

I am sure you guys have good reasons for your choice of platform and architecture. Please don't get me wrong, I guess I was just trying to understand the underlying reasons for your platform of choice. My attempt to get you guys to ponder upon a few things and also learn from other professionals at the same opportunity. Anyway,if your setup works for you, it is probably the best solution.

Regards
Re: Java developers wanted
December 06, 2006 09:44AM
Simple example of what I'm trying to get at:

As a note, I am not saying that this is the case, I am just questioning how you reached an architectural decision on such light assumption over the problem space.

Let's say these guys wanted to have an automatic form-generating application based on the database design and partial reflection/object-based database. Think of Persistence. Something like JDO, thinking here of Hibernate, for instance.

There are other frameworks that are accessible through application servers like JBOSS, frameworks that are possible through the maturity of the core technologies they're written in.

Suppose the actual client-side resides on the vending machine, Database n' all, and because it's GPRS, they actually use the network/database capability for remoting purpose, say at the "end" of the day. Now things become interesting don't they?

What I am trying to highlight as my question is, How do you arrive at deciding the technological solution when the problem set could be ANYTHING? As in, shouldn't the better question be, "Why did your company make these technological choices?"

Chances are out there exists someone asking "Hey! Why not ASP, VB6 and MSSQL" And someone else raving, "Oracle will kick you hard!"
But the reality is unless we understand the problem set, there is just no way we can pick.

Don't know, unless there is a quantification and analysis methodology I am not aware of that enables you to pick technology irrespective of the clarification of the problem set?
Re: Java developers wanted
December 06, 2006 08:32PM
Okay let me try to answer your question as best as I can. The reason our company switched to an Oracle- PL/SQL platform was a mix of: product maturity, efficiency, support, flexibility and performance. Also our team of Java developers were not (at that time) familiar with persistence/code generation frameworks such as Hibernate/Spring/XDoclet. Sure Oracle implementation cost an arm and a leg, but the risk of technology change was compensated through the availability of Oracle skills in S.A. Now try to find a skilled developer familiar with open-source technologies such as Apache Struts/JBoss EJB/Aspect in S.A, even at this point in time I bet they are pretty darn rare!!

Another point I'd like to make: with today's technology you can mix and match your development tools + frameworks + platforms and no matter what options you have chosen you WILL eventually acheive the same product. The underlying factor is the amount of effort you have to put in integration and implementation. So what I am saying is that although one may choose (for example) C++/C# to develop a CRM application, the better option would be to develop Java because of the plethora of high-quality open source/free components available (obviously this means you don't need to code the component from scratch). In the end it almost always boils down to these 3 critical success factors: (i) resource availability (tools, developer skills etc..), (ii) time frame, (iii) budget.

Finally I think the most significant factor is if your team is comfortable and confident working on a specific platform/architecture. If your team has successfully completed 10 consecutive projects using COBOL on RS/600- you're asking for trouble if you suddenly switch to say, PowerBuilder for the 11th.

Hope that clarifies some of your doubt.

Regards
Re: Java developers wanted
December 14, 2006 01:53PM
Did they have to RUN away??? Khutso and Zak brought a different view to all this and was gonna be even nicer to understand why the choice of tools to use by Zak.

The foremost important thing this days is offering a service at a smaller cost followed by resource availabilty and deadlines (time frames). I learned quite a lot and I envy the obvious fact tht u guys know ur stuff.... will get there 1 day.

----------------------------------------------------------------
Setlogolo sa Ditlou
----------------------------------------------------------------
Anonymous User
Re: Java developers wanted
December 19, 2006 02:21PM
Haven't check the thread in a while. Interesting...

I'll give an example of how java became a natural choice.

Since our communication with the vending machines is over gprs we use a custom application level networking protocol (over tcp/ip) to limit the amount of data transfer and cut costs. Savings might be less significant today since gprs costs have dropped the last year or so, but when taking the decisions it was considerably more expensive. We also integrate into an external service provider who is using a custom networking protocol and with already having inhouse experience it was a breeze. (They also chose the java route by the way)

You can code everything in java, bar a few titbits of native code here and there in c++ (or whatever you wish). I can speak to coin dispensers/acceptors, note readers, card dispensers using java. Web development, gui, networking, database, reporting, scheduling. There are many mature open source projects done in java, thinking of jasper reports, apache's jakarta project, quartz for scheduling. There is a plethora of mature libraries on the apache site. There are frameworks built for it. For the next generation in custom application level networking check the apache mina project (based on the earlier netty project).

The j2se libraries are growing at a significant pace. You've got the eclipse project pushing java based development even further. We currently don't use much of J2EE, but there is a lot to offer in terms of distributed programming. We might be using it in future and this leads me to a significant point. We don't have to have staff coding in 5 different languages to get stuff done, we can do everything in java and it has proven to be more than adequate in each environment we use it.

Maybe we could have it run faster or better in this or that environment, but we would have the learning curve for staff, which results in slower time to market for the product. Here everyone just need to be comfortable in java and they can get working on any aspect of the system much quicker.

Mostly I have found that people like what they know, you'll think it is superior because you have a good understanding of it. How can you compare two types of technology without having had the same amount of experience on both, for the same type of application and that in the same time period (since most technologies are growing)?

Hard to objectively compare. Chances are the technology you think is the worst is working for someone.

Java and open source software is working for us. I like the community aspect of open source and some of the philosophy.

Why do we like Linux. Why not just have our machines run on Windows. We'll have less issues with touch screen drivers (so some say) for example since the hardware manufacturers support MS. Doesn't that increase the costs of using linux, the expertise required? The hardware issues?

In certain situations the cost to a company might not be that much less using linux since you might need more skills to work on such a system. But where is the money going? You are investing in people rather than large off shore corporations with rich ceo's. I really don't mind having some of that money redistributed to more people (in a capitalstic way even).

There is a lot involved in a system like ours, it will take me days to to take you through a tour of 4 years worth of code. It is a niche environment with challenges that you won't find much help for on the net or in books, because so few people have had the need for such things. Everyone will make some bad design decisions at some point. But overall our architecture has been working well for us (and we use a LOT of jdbc).

ola
z
Anonymous User
Re: Java developers wanted
December 19, 2006 02:29PM
ps

Given enough time you could always have done things better. If only the world was that simple with no such things as deadlines, budgets, time to market and demanding clients, then maybe we'd all write better code. It's a balancing act between things working now and things done right.

z
Re: Java developers wanted
December 19, 2006 08:42PM
very enlightening zach. I am glad to read your comments, I always like learning from industry professionals. If you don't mind me asking .. which Linux distribution do you guys use?
Anonymous User
Re: Java developers wanted
December 20, 2006 09:12AM
We are currently using Ubuntu. We still have some Red Hat 9 machines out there, but we are in process of converting them. The new live cd install process is so quick you can have a machine installed in 15-20 minutes from scratch. (And I prefer installing them, since clones have given me grey hairs, although I must add I wasn't involved in the cloning process)

I prefer debian based systems, mainly because I know them better. smiling smiley

Another aspect which makes our environment niche in regard to skills, is that many linux admins mostly have experience with server based applications. Knowing how to troubleshoot serial ports, usb-to-serial converters (writing udev rules), touch panels and screens switching off every couple of minutes (ours remain on of course), sounds easy enough, but there is a lot to it. And every new motherboard that comes out is a new challenge in terms of software support.

It's a satisfying environment if you like variety and being involved in the whole sdlc, but if you like corporate and doing your jsp for the day and climbing the ranks, we're not for you.
Anonymous User
Re: Java developers wanted
December 20, 2006 09:41AM
Just to clarify an earlier statement of mine: "it is not a niche thing, many are working on this kind of platform, so it is good experience."

It might seem contradictory to what I am saying now, about our environment being niche. We have a niche field of application, but not using niche technologies.
Sorry, only registered users may post in this forum.

Click here to login