×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
Probably should start another thread...
The issue comes back to developing *new* applications. Should they be
platform/OS dependent or should they be written with multiple platforms
in mind? In my particular case, perhaps unique, when I write an
application, even though I target the i, I know that selling a new box
into a customer's location is an uphill battle. Given my recent
experience with IBM's business partner program, if you aren't selling
plenty of iron for them, they aren't interested in partnering, so more
recently I can't even lead with an i because I can no longer resell
them. So, given that I have a battle that is difficult to win, I make
sure that my application can run on as many platforms as possible.
Java, so far, with JDBC, has been very easy to move from platform to
platform with. If there is a JDBC driver, I can use the database. I
*try* to use SQL syntax that will work across DB's but there are some
things, like the LIMIT clause in MySQL that Scott mentioned, that I have
to avoid, or work around, in my applications.
WHY would I even consider a cross platform language like Java vs RPG?
Because as much as I love the platform and promote it, I am a realist
and I know that it is mostly a non IBM i world out there. It is hard
enough to sell into an account that has existing hardware, let alone try
to sell and application AND a box. The beauty is, if they are forward
looking enough to own an i, I can install on i.
So, to address your concern Matt. When it comes to writing new
applications I try to stay as DB and OS agnostic as I can. There is
syntax in almost every DB that lacks an analog in another so I avoid
those things if I can.
Thanks for the link on the storage engine. That thing has been longer in
coming than the Cubs winning another pennant. Oh, wait a minute, we are
still waiting on the Cubs.....
Pete
Haas, Matt (CL Tech Sv) wrote:
<snip>
I would guess my substitute dispatching and absence management system
could be considered "narrowly scoped" but something like Sugar CRM?
Runs on Windows, Linux and i without so much as a difference in a line
of code (to my knowledge). I would guess just defining database
connections during configuration time is about all it takes.
</snip>
Where the difficulty comes into play is with the database itself and how the applications construct queries. From what I've seen, MySQL has a lot of non-standard syntax for things (especially data types and DDL statements) and it is common for PHP apps to use those items in the queries. Since there isn't some middle layer (like Hibernate or even just JDBC itself) to translate that query into the syntax the target database can understand, you end up with the app tied to MySQL.
What the IBMDB2I storage engine (http://www.ibmsystemsmag.com/ibmi/february09/features/24086p1.aspx) does is essentially handle the translation between MySQL and DB2 without having to manually port the database parts of the app to DB2.
Matt
As an Amazon Associate we earn from qualifying purchases.