We Use BobX

« Return to Article
  • pluma 2010-08-03 09:03
    SECOND!
  • The Nerve 2010-08-03 09:06
    The creator of Hibernate and it's bastard child HQL admitted that he created a whole new way to query because he couldn't understand and couldn't be bothered to learn SQL. Something tells me that BobX was created with the same premise.
  • Guest 2010-08-03 09:11
    To me it sounds like "bob" simply tries to make sure he won't be loosing his stream of income any time soon ...
  • Burpy 2010-08-03 09:15
    Why do 80% of all ERPs think they're worth their own home made language???
  • frits 2010-08-03 09:16
    I find all you BobX haters so frusterating. I mean, it's just a tool like Java, PHP, or C#. The real value is in getting the job done. And if I can do it using BobX, well screw you and good for me.
  • Steve The Cynic 2010-08-03 09:17
    OK, the in-house language is a serious WTF, both in the fact that they have one and in its specific nature. The fact that Christian didn't ask about the server platform at interview time is a personal WTF that is nobody's fault but his.

    The supermega WTF, however, is running all your company's IT systems on infrastructure owned by a contractor that nobody has ever met.
  • sui 2010-08-03 09:20
    A parser written in a parser


    Wouldn't surprise me if BobX is only a abstraction layer of the php smarty template engine.
  • ObiWayneKenobi 2010-08-03 09:25
    I love how there's no company in the world that can use an COTS ERP system, but MUST create one in-house to deal with such complex tasks as tracking customers, or orders, or processing invoices.

    I often wonder if the development "team" just feeds management this line of bullshit to be able to spend months re-inventing the wheel instead of buying something customizable.

    And, you have to love the "self-proclaimed genius programmer doesn't like Feature X of Language Y, so he creates his own abstraction language that cons the entire company into using it". I cannot think of ANYONE sane in the real world who would willingly take a job working with some obscure language that is only used by one company in the entire world. Unless you plan on never leaving that company, what benefit do you gain?
  • MP (Real) 2010-08-03 09:30
    This just makes me want to cry.
  • bl@h 2010-08-03 09:33
    I call shenanigans, no company would do this.

    Or would they?
  • James 2010-08-03 09:35
    To be fair, the server could have been compromised because of poor PHP code :)
  • One of the IT Crowd 2010-08-03 09:37
    Anyone else suspect that Bob == Brian ?
  • DeGustibusNonDisputandumEst 2010-08-03 09:43
    Maybe you should ask this guy: http://bobx.co.nz/
  • BobB 2010-08-03 09:43
    I program in BobB, it's just like programming in B only simpler!
  • Keloran 2010-08-03 09:44
    BobX aka Smarty, hmm sounds too familar to me, i wonder if i ever worked at that company
  • Corey 2010-08-03 09:44
    I used to work for a company that used BobX ~2003, only by that point it was already called ColdFusion.
  • Drew 2010-08-03 09:46
    Did anyone else misread the title and expect a article about a new database type that was specifically for XML? I'm imagining a whole relational database made up of nothing but XML Blob columns...

    ...I scared myself.
  • The Nerve 2010-08-03 09:48
    I'm glad Christian got hammered. He's not a team player. Too many times, you've got developers going rogue writing code that no one else knows how to maintain. The next thing you know, Christian would have been converting massive parts of the system to non-BobX code. Maybe he would have read a book on Java over the weekend and started writing Java Beans and JSF. Then that wouldn't be enough for him and he would start with Groovy.
  • AnonymousX 2010-08-03 09:51
    This story can't possibly be true, it's far too ridiculous
  • NotBob 2010-08-03 09:54
    We had a guy who developed a rather similar web-page-from-database-generating "language", circa 1995. As an alternative to hand-coded C/C++ applications it was great (for its time), but it rapidly fell into disuse when ASP came along
  • Alekz 2010-08-03 09:57
    Looks like custom tag libraries for JEE apps?
  • My Name Is Missing 2010-08-03 09:59
    It's clear to me that Bob is a Terrorist.
  • NC 2010-08-03 09:59
    Corey:
    I used to work for a company that used BobX ~2003, only by that point it was already called ColdFusion.


    Hah, beaten to it. When the sample code was shown the first thing I thought was that BobX was code for ColdFusion.
  • Anon 2010-08-03 10:01
    Hah! So now we know what TDWTF forum system was written in.
  • Maskime 2010-08-03 10:02
    It does look like ColdFusion.

    To me Bob is friend with Brian and this was their way to be sure to have a regular income...
    'Cause the guy can not ask for a PHP developper in the first place if he doesn't know that the whole stuff is working with that in background...
  • operagost 2010-08-03 10:03
    SpectateSwamp has a potential business partner.
  • icebrain 2010-08-03 10:03
    I like BobX [NSFW].

    On a serious note, that HTML tag-like system is used in WACT, but only in templates, where is fits.
  • Bogolese 2010-08-03 10:05
    All your base are belong to us
  • Buzz Killington 2010-08-03 10:06
    Definitely thought it was Coldfusion too.
  • Corey 2010-08-03 10:09
    [quote="AnonymousX"]This story can't possibly be true, it's far too ridiculous[/quote]

    Is it? Is it???? I humbly refer you to http://www.codinghorror.com/blog/2006/09/has-joel-spolsky-jumped-the-shark.html
  • Zaratustra 2010-08-03 10:09
    "I didn't hack the server, I xbobhacked the server."
  • toth 2010-08-03 10:13

    <xbobif condition="amount <= 12" >
    ...Some HTML here...
    <xbobendif>


    That's not an XML end tag. Or an XML attribute. So BobX is XML minus well-formed document checking. Nice.
  • Jon 2010-08-03 10:13
    ... and then Bob went on to develop Apache Ant.
  • Aaron 2010-08-03 10:18
    ObiWayneKenobi:
    I love how there's no company in the world that can use an COTS ERP system, but MUST create one in-house to deal with such complex tasks as tracking customers, or orders, or processing invoices.

    Wait, I'm confused. If all a company needs to do is process a few invoices then why should they spend a zillion dollars on a fancy-pants ERP system?

    I think that the cost-benefit ratio of ERP, CRM, ESB and all that other crap tends to follow an inverted parabolic curve. There's a happy medium in there somewhere when it makes sense - you're running a big company with hundreds of thousands of customers and are still working off Excel spreadsheets and access databases. Definitely, buy an ERP. But if your company is small or has a very simple/straightforward process, it's far less expensive to get a good developer to blast something out in 2-4 weeks. On the other hand, if your process has so many twists and turns that you can't even draw up a legible flow chart, all of that "customization" essentially becomes custom development anyway and you're just pissing away money.

    OK, so there's probably little to no justification for creating an entire in-house templating language just to squirt out a few invoices. I'm not saying that this particular story is a good example of a rational cost-benefit analysis or sound development practices. But come on, almost every off-the-shelf TLA that's designed to be "customized" is a bottomless pit of expense and despair. Most companies would be justified in avoiding them.
  • Daniel 2010-08-03 10:21
    Not only does the syntax look similar to ColdFusion, but the implementation is similar. ColdFusion is implemented as a Java Servlet so it's an interpreter running in a java byte code interpreter which is just as bad.
  • Box 2010-08-03 10:21
    I switched to Java now
  • Jon Kiji 2010-08-03 10:23
    frits:
    I find all you BobX haters so frusterating. I mean, it's just a tool like Java, PHP, or C#. The real value is in getting the job done. And if I can do it using BobX, well screw you and good for me.


    I agree, I code in JonX which is a layer on top of basic to make it strcutured like ASM with Python-like objects and all of this poured in a neat XML layout.

    It takes only 4 days to code a very decent 'Hello, world!', it gets the job done alright. Unfortunately I cannot get anyone to hire me, something to do with costs or something.
  • Anonymously Yours 2010-08-03 10:23
    I can't help but notice BobX looks suspiciously like the hell that is ColdFusion.

    <xbobloop statement="AssistantName" >
    
    <xbobprint> .. write table content here .. <xbobprint>
    <xbobendloop>


    ... in CF would be...

    <cfloop query="QueryName" >
    
    <cfoutput> .. write table content here .. </cfoutput>
    </cfloop>
  • Balentius 2010-08-03 10:27
    ObiWayneKenobi:
    I love how there's no company in the world that can use an COTS ERP system, but MUST create one in-house to deal with such complex tasks as tracking customers, or orders, or processing invoices.

    I often wonder if the development "team" just feeds management this line of bullshit to be able to spend months re-inventing the wheel instead of buying something customizable.

    One problem I've seen (at two companies now, so it's a trend - right??? :) ) is that it starts off as a small company, and they do stuff with Excel. Then, they get larger, and eventually realize that Excel isn't a great application for this sort of thing, and someone generates a small program to do the same functions, plus one or two extras.
    At that point, it is "the system", and it now becomes difficult to remove. Instead, more and more gets bolted on to it, and eventually you end up with a monster that takes a large amount of time to make the smallest changes. However, you can't replace it, because it now controls everything but the coffee pot (probably because that hasn't been requested yet...)
    So, when they go to look at a "professional" system, they see that it costs a ridiculous amount of money, to do only some of the same things that the existing system does.

    No evil involved here, just legacy code and tightwad management. (Yes, the programmers at the previous company I worked at TRIED to get a new system, but were told that it was too expensive.)
  • unwesen 2010-08-03 10:39
    Except for the "implemented in PHP" bit, it sounds a bit like what I had to deal with in a previous job. I had hoped I was the only one.

    This one wasn't implemented in PHP, but a real Apache module. The scripting language had quirks like switch statements nested in if statements would work, but not if statements inside switch statements. Or vice versa, I forgot.

    It had a module subsystem - really quite useful. But the inventor of the scripting language didn't really think that anything but strings or integers would be passed to and from modules. So as a later addition, they hacked the module code to pass complex objects... internally, object pointers would be serialized to hexadecimal string representations and passed as strings, and then deserialized and dereferenced on the other side.

    Yep. Any parameter starting with "0x" followed by hexadecimal digits would get let you overwrite that memory location.
  • zdux 2010-08-03 10:44
    is there a bobx.Net ?
    I like xml and pain
  • ReallyCalledBob 2010-08-03 10:46
    Actually it would be:

    <cfoutput query="queryName">
    
    #TableContent#
    </cfoutput>
  • Amtep 2010-08-03 10:58
    Now why didn't Christian just write a PHP to BobX compiler? That would have saved him so much trouble.
  • AWKScooby 2010-08-03 11:00
    Sun's Identity Manager (now called Oracle Waveset) has their own version of Bobx -- Xpress. It's an object-oriented LISP derivative, that's wrapped up in XML, and interpreted in Java.

    x += 10 would be written as:

    <add> <ref>x</ref> <i>10</i> </add>

    But hey, they get to put a check mark on the box next to XML...
  • Skilldrick 2010-08-03 11:04
    Don't you mean "Might as well be brainf*ck"? I assume you're talking about the language:

    >+++++++++[<+++++++++++++>-]<+.-------------.+++..-------.++++++++++++++.>++++++[<----------->-]<-.+.+++++++++++++++.>+++++[<++++++++>-]<+.++.--.>++++++[<---------->-]<+.>+++++++[<++++++++>-]<.+++.
  • Bert 2010-08-03 11:06
    TRWTF is PHP.
  • Cailin Coilleach 2010-08-03 11:14
    Guest:
    To me it sounds like "bob" simply tries to make sure he won't be loosing his stream of income any time soon ...

    ++

    Sounds to me like this Bob's a fscking smart guy!
  • da Doctah 2010-08-03 11:14
    Amtep:
    Now why didn't Christian just write a PHP to BobX compiler? That would have saved him so much trouble.


    Better still, develop "ChristianY", which is implemented in BobX. And then leverage it to force out Bob....
  • Kyle Z. 2010-08-03 11:22
    One of the IT Crowd:
    Anyone else suspect that Bob == Brian ?


    Totally.
  • Bryan The K 2010-08-03 11:24
    Kyle Z.:
    One of the IT Crowd:
    Anyone else suspect that Bob == Brian ?


    Totally.


    Has anyone ever seen Bob and Brian in the same room together? It's kind of like Batman and Bruce Wayne.

  • BobX 2010-08-03 11:26
    You pitiful unintelligent plebs just cannot grasp the power that I have unleashed with BobX.

    Captcha: bene
    A job working with BobX is a bene in and of itself.
  • J.R. "Bob" Dobbs 2010-08-03 11:30
    Corey:
    Is it? Is it???? I humbly refer you to http://www.codinghorror.com/blog/2006/09/has-joel-spolsky-jumped-the-shark.html


    I think Wasabi was already covered on TheDailyWTF (albeit with LOTS of obfuscation, the site called it WTFSL and the company was referred as a security company. I'm not linking the article due to Akismet being a PITA). This language is even *more* stupid than Wasabi since it isn't even compiled to PHP but runs *on top* of PHP (whose main selling points do not include speed).

    That being said, not every in-house language is necessarily a WTF (you could have a niche language for a very specialised application, for instance), and some allegedly “general-purpose” languages are extremely offensive.
    Case in point: The 4D DBMS. A pet peeve of mine, this software shoves its own language on its users. The language can only be edited from the pitiful integrated editor, and until recently didn't even include SQL queries (!). The string functions don't even have a split/explode equivalent (or anything else useful for that matter). Despite being interpreted, it doesn't really support dynamic type casting (but it has pointers! Yeehaw!), and its arrays' indexes begin at 1. Oh, and the tags for dynamic webpages allow you to loop on arrays... only if they're one-dimensional (just to quote a few WTFs, there are much more). And this is a commercial language that has even got devoted users, which IMHO goes to show that the in-house vs. distributed parameter is not that relevant to the language's quality...
  • J 2010-08-03 11:33
    This was definitely not the reaction that Christian expected.


    Really? Because everyone else saw it coming from a mile away...
  • Kyle Z. 2010-08-03 11:38
    Bryan The K:
    Kyle Z.:
    One of the IT Crowd:
    Anyone else suspect that Bob == Brian ?


    Totally.


    Has anyone ever seen Bob and Brian in the same room together? It's kind of like Batman and Bruce Wayne.



    If someday they invoke Bob and he comes with a mask (with sure a X on the top of it), I'll shit on my pants laughing.

    I'm sure that Brian will make a good excuse for missing work.
  • ounos 2010-08-03 12:07
    The Nerve:
    The creator of Hibernate and it's bastard child HQL admitted that he created a whole new way to query because he couldn't understand and couldn't be bothered to learn SQL. Something tells me that BobX was created with the same premise.

    Link, or it didn't happen.
  • Steve The Cynic 2010-08-03 12:22
    Aaron:
    ... Definitely, buy an ERP. But if your company is small or has a very simple/straightforward process, it's far less expensive to get a good developer to blast something out in 2-4 weeks. On the other hand, if your process has so many twists and turns that you can't even draw up a legible flow chart, all of that "customization" essentially becomes custom development anyway and you're just pissing away money. ...

    And here we have the essential problem. It is basically impossible to computerise an existing human-driven process. This has been known by the wiser heads since at least as long ago as the early 60s.

    No, rather than trying to bend the computer to fit the hopelessly fleshy-driven process, you morph the process to become computerisable, and then computerise it. In the 60s, LEO (Lyons Electronic Office, go look it up) made a business out of this, with a series of successful projects. In the 80s, this concept was rediscovered and became a management fad, this time called "business process reengineering".

    ((Declaration of bias: My mother worked as a programmer at LEO in the early 60s.))

    Your main problem is "Old Fred's Report". Every attempt to computerise the business is stymied by the need to emulate the labyrinthine report that "Old Fred" produces once a month. It becomes the measure of these attempts, until somebody asks the obvious questions: "What does Old Fred's Report actually mean?" and "Does anybody actually read any of it?" Once it comes out that the first answer is "Nothing" or "Nobody knows" and the second answer is "No", the blasted thing can be abandoned, and Old Fred can be quietly persuaded to take early retirement, or to fall under a bus or something. At this point, a precedent has been set, and hordes of other processes, reports, etc. can be shuffled, modified, etc., until the company can be trivially computerised.
  • The Nerve 2010-08-03 12:27
    Did someone BobX the please-support.thedailywtf.com link?
  • Kyle Z. 2010-08-03 12:28
    pluma:
    SECOND!


    This guy posted first thinking that he would be the second...

    You have a serious lack of self confidence problem.
  • Pants 2010-08-03 12:45
    I find this story extremely frusterating.
  • 1337c0d3rz 2010-08-03 12:46
    Does anyone know where we can download the bobx framework for immediate implementation? Also, we'll need to lease some support time from mr X. I think this is going to fit perfectly into our current development style.
  • some dude 2010-08-03 12:51
    Drew:
    Did anyone else misread the title and expect a article about a new database type that was specifically for XML? I'm imagining a whole relational database made up of nothing but XML Blob columns...

    ...I scared myself.


    You don't have to imagine it. It is a very frequent WTF.

    Now.. if only we could setup the servers on a wooden table and not use a file system..
  • Anonymously Yours 2010-08-03 13:01
    ReallyCalledBob:
    Actually it would be:

    <cfoutput query="queryName">
    
    #TableContent#
    </cfoutput>
    Your code is more efficient, but I was writing the equivalent CF code to match what was written in BobX.
  • anon 2010-08-03 13:10
    > TRWTF is PHP.

    No surprise Christian had hard time trying to replace bobx with a language that is not any better.
  • Digital Pimp 2010-08-03 13:12
    I don't know if any of you ever did Cold Fusion, but BobX looks a lot like it.

    This is on par with Codethulu.

  • Yazeran 2010-08-03 13:24
    unwesen:
    Except for the "implemented in PHP" bit, it sounds a bit like what I had to deal with in a previous job. I had hoped I was the only one.

    This one wasn't implemented in PHP, but a real Apache module. The scripting language had quirks like switch statements nested in if statements would work, but not if statements inside switch statements. Or vice versa, I forgot.

    It had a module subsystem - really quite useful. But the inventor of the scripting language didn't really think that anything but strings or integers would be passed to and from modules. So as a later addition, they hacked the module code to pass complex objects... internally, object pointers would be serialized to hexadecimal string representations and passed as strings, and then deserialized and dereferenced on the other side.

    Yep. Any parameter starting with "0x" followed by hexadecimal digits would get let you overwrite that memory location.


    For the love of god, please tell me that all user input was severely sanitized before passing anything between modules.......

    Otherwise, fun with odd crashes....

    At least with SQL-injection you can check the server logs for something "';DROP TABLE STUDENTS;--", but what do you get out of 'login?id=0x4f5452ff&.....'

    Yazeran.

    Plan: To go to Mars one day with a hammer...
  • The Bytemaster 2010-08-03 13:24
    ObiWayneKenobi:

    And, you have to love the "self-proclaimed genius programmer doesn't like Feature X of Language Y, so he creates his own abstraction language that cons the entire company into using it". I cannot think of ANYONE sane in the real world who would willingly take a job working with some obscure language that is only used by one company in the entire world. Unless you plan on never leaving that company, what benefit do you gain?

    You are right. No one ever wants to work for Yahoo!
  • nasch 2010-08-03 13:29
    Kyle Z.:
    pluma:
    SECOND!


    This guy posted first thinking that he would be the second...

    You have a serious lack of self confidence problem.


    Either that, or you have a lack of humor problem. Which would be serious by definition.
  • Fred 2010-08-03 13:35
    “Welcome aboard!” exclaimed Brian
    Every time a new job starts with “Welcome aboard!” it makes me want to jump ship. Except we're not on a ship, Brian!

    Reminds me of a former boss who used to say, every now and then, "I'm going to hit the head" and then he would leave the room. Always wondered if he needed a wank or what. Two years later I learned that "head" is the Navy term for bathroom. Earth to Cluelack: you're not in the Navy any more.
  • The Nerve 2010-08-03 13:40
    anon:
    > TRWTF is PHP.

    No surprise Christian had hard time trying to replace bobx with a language that is not any better.


    This comment could not be any better.

    However, I have found another WTF, and that is with this site loading.
  • foo 2010-08-03 13:56
    ObiWayneKenobi:
    I love how there's no company
    And, you have to love the "self-proclaimed genius programmer doesn't like Feature X of Language Y, so he creates his own abstraction language that cons the entire company into using it".


    I reserve the right to not love Bjarne Stroustrup.
  • Cali 2010-08-03 13:58
    The server, infrastructure, and database teams all work closely with each other on a daily basis.”


    and

    “but I do know this – finance has cut him a check every month for the past 10 years and he provides servers, environments and adds features to BobX freeing up the guys here to handle everything else.”


    I'm inclined to wonder what "everything else" consisted of, and additionally, why anyone AT ALL stayed there. Dude pretty much admitted that honesty cost them hires. At no one point has it occurred to them that this is not a long term option. Surely someone recognised the inherent risk of running a system NO one new wanted to work on?

    And yeah, I believe that this or similar happened.

  • JC 2010-08-03 14:03
    YOU HAVE TO BE KIDDING?!?! Please tell me that was a joke! hahaha Dude it isn't like PHP - its built on-top of PHP -> Therefore it's an even higher level of abstraction! There is a difference between PHP and XML..please don't compare the two!
  • MatekCopatek 2010-08-03 14:17
    Nice try, Bob!
    (hello from reddit)
  • ÃÃà 2010-08-03 14:20
    This is the definition of WTFery. Looks like Bob got too hopped up on the XML bandwagon and decided to write an xml parser for his "language". SOMEHOW he convinced management this was ideal, and when Christian demonstrated that using plain PHP instead of adding another abstraction layer (which was hard to read and slow as rocks), and the customers commented that they in fact liked that everything generally felt faster, what does management do? Nothing less than forcing Christian into more WTFery. I wonder how many customers they lost after going back to BobX.

    On the other hand, I have to give Bob credit for SOMEHOW convincing everyone in the development team for using that WTFery, and on top of that getting everyone to call it BobX.

    inhibeo: what you really need to prevent yourself from stabbing your eyes out after looking at BobX source.
  • PleadTheCFIF 2010-08-03 14:58
    I get the feeling that Bob was the guy who got the maddest when anyone dared to "touch" him as a kid.
  • James 2010-08-03 15:14
    I checked out the site:

    http://bobx.co.nz/

    ...and maybe it's just me, but anyone who uses Comic Sans font for a professional IT website is a character.

    Off topic...WTF servers are slow today!
  • da Doctah 2010-08-03 15:21
    PleadTheCFIF:
    I get the feeling that Bob was the guy who got the maddest when anyone dared to "touch" him as a kid.


    Bob, 1992: "They all laughed at me. Said I was mad. Mad, I tell you! But just you wait. When I unleash my super-powerful PHP front-end language on the world, then we'll see who has the last laugh! MUWAHAHAHAAA!!!"
  • Frits is Smoking Somethin' 2010-08-03 15:32
    frits:
    I find all you BobX haters so frusterating. I mean, it's just a tool like Java, PHP, or C#. The real value is in getting the job done. And if I can do it using BobX, well screw you and good for me.


    Loser. You musta been programming all of 6 months to make a statement like this!
  • reddit 2010-08-03 15:42
    HAI BOB!
  • Moocoos 2010-08-03 15:51
    I worked for a very large multi national corporation that is a household name. All of their servers ran the "Josh Markup Language." This kind of shit happens, believe me.
  • Benj 2010-08-03 15:51
    Wow. Amazing how some people can snow an entire organization into thinking their some sort of code genius demi-god, and hold them hostage like that. Poor bastards.
  • Kensey 2010-08-03 16:05
    Steve The Cynic:
    The fact that Christian didn't ask about the server platform at interview time is a personal WTF that is nobody's fault but his.


    Why would he ask about it when the position he applied for was described perfectly clearly?

    ...when he interviewed with Brian for a PHP position and all of the technical questions related to hardware demands, logical approaches and pitfalls with regards to developing web applications in... PHP.


    The fact that the job description was perfectly clear and wrong is the company's fault, not Christian's. Or do people go around applying for jobs and then in the interview ask "I know the job description said $LANGUAGE, but do you really use that or is it something else?"
  • James Sullivan 2010-08-03 16:11
    That's one way to ensure a long-term contract, make up your own language and convince someone to lock into it... that is after all what SAP and the other companies did over the past 20 years. Good thing you quit - can you imagine the pain of dealing with the bobx guy and his emotional stunts like that in the future? Also, naming a language after yourself is pretty special - this guy must think very highly of himself which probably entails lots of other really egotistical behavior.
  • EngleBart 2010-08-03 16:23
    The Nerve:
    Did someone BobX the please-support.thedailywtf.com link?

    Seconded. I had to add an entry to my hosts file for please-support just to read todays story about unmaintainable web sites. Coincidence? Or a test to see how much I want my WTF?

    Once the site is back up, please let me know so I can remove my host entry and support the WTF.
  • The Nerve 2010-08-03 16:28
    James Sullivan:
    That's one way to ensure a long-term contract, make up your own language and convince someone to lock into it... that is after all what SAP and the other companies did over the past 20 years. Good thing you quit - can you imagine the pain of dealing with the bobx guy and his emotional stunts like that in the future? Also, naming a language after yourself is pretty special - this guy must think very highly of himself which probably entails lots of other really egotistical behavior.


    Why waste your time making up new languages when there are literally dozens of buggy open-source languages being released every day.

    1. Download framework and code from Source Forge
    2. Modify source code to add "missing" language features.
    3. Abandon project and find new framework on Source Forge
    4. $$$!!!
    5. Return to 1 ad infinitum
  • The Nerve 2010-08-03 16:28
    EngleBart:
    The Nerve:
    Did someone BobX the please-support.thedailywtf.com link?

    Seconded. I had to add an entry to my hosts file for please-support just to read todays story about unmaintainable web sites. Coincidence? Or a test to see how much I want my WTF?

    Once the site is back up, please let me know so I can remove my host entry and support the WTF.


    Thanks for ruining the test.
  • sheldon 2010-08-03 16:31
    One of the IT Crowd:
    Anyone else suspect that Bob == Brian ?

    I suspected that BobX will turn out to be some kind of renamed PHP. That Bob would take each new PHP release, rename it to BobX and sell as an upgrade.
  • sheldon 2010-08-03 16:37
    Corey:
    Is it? Is it???? I humbly refer you to http://www.codinghorror.com/blog/2006/09/has-joel-spolsky-jumped-the-shark.html

    Oh, wow. I remember reading in Joel's blog that when they hire programmers, they only care about general abilities, not specific technologies. At that point it seemed like a smart decision. But now it looks like maybe it was just necessity, after all there probably aren't that many Wasabi programmers around...
  • nobody 2010-08-03 17:18
    Fred:
    “Welcome aboard!” exclaimed Brian
    Every time a new job starts with “Welcome aboard!” it makes me want to jump ship. Except we're not on a ship, Brian!

    Reminds me of a former boss who used to say, every now and then, "I'm going to hit the head" and then he would leave the room. Always wondered if he needed a wank or what. Two years later I learned that "head" is the Navy term for bathroom. Earth to Cluelack: you're not in the Navy any more.


    Earth to Fred: You're just stupid. Everyone else learned that before the age of 10.
  • BobX Hater 2010-08-03 17:29
    the problem here isn't that BobX is bad (although from the sounds of it it is). The problem is that this "Bob" character re-invented something that didn't need reinventing. Why would someone write a PHP-like scripting language in PHP? Unless it offers some performance or development enhancements or features that PHP doesn't include then there's no point.
  • gil 2010-08-03 17:43
    BobX = Job security for Bob.
  • Programmer 2010-08-03 17:44
    Huh, sounds like a horror movie...
  • Martin Byrd 2010-08-03 17:54
    ObiWayneKenobi:
    I love how there's no company in the world that can use an COTS ERP system, but MUST create one in-house to deal with such complex tasks as tracking customers, or orders, or processing invoices.

    I often wonder if the development "team" just feeds management this line of bullshit to be able to spend months re-inventing the wheel instead of buying something customizable.

    And, you have to love the "self-proclaimed genius programmer doesn't like Feature X of Language Y, so he creates his own abstraction language that cons the entire company into using it". I cannot think of ANYONE sane in the real world who would willingly take a job working with some obscure language that is only used by one company in the entire world. Unless you plan on never leaving that company, what benefit do you gain?


    And I've also seen these COTS products that have to be so highly customized, and just coincidentally require very very expensive consultants (as opposed to the normal just expensive consultants) to keep them running. For 'future proofing' they allow such fields as 'user1' 'user2' and 'user3' ... cool!

    To that end, how is that any different from creating your own web app in ASP.net MVC + Sql (both COTS products) that does almost what the silly COTS program does, except you're no longer held ransom to another companies lifecycle.

    Core to your business - build it in-house.
    Not core to your business - outsource or use off-the-shelf.
  • Grumpy 2010-08-03 17:54
    Skilldrick:
    Don't you mean "Might as well be brainf*ck"? I assume you're talking about the language:

    >+++++++++[<+++++++++++++>-]<+.-------------.+++..-------.++++++++++++++.>++++++[<----------->-]<-.+.+++++++++++++++.>+++++[<++++++++>-]<+.++.--.>++++++[<---------->-]<+.>+++++++[<++++++++>-]<.+++.


    Win. Impressive Stunt bonus. Do you really live in Finland or do you just use iki as an intermediate?
  • logical.. 2010-08-03 18:37
    Pants:
    I find this story extremely frusterating.


    I have to admit that I was frustererated when I read it the first time too. Then I read it again and didn't feel any different.. does that mean I was refrustererarted? If so - damnum
  • UriGagarin 2010-08-03 18:49
    The trouble is that often the business won't change their processes (no matter how stupid) to fit a COTS system - most COTS systems I've seen will fit standard business processes.

    Or they buy one that is probably as far as far away to fitting their processes and want to modify it to match it.

    The problem is that they see the change at only at the software end , no matter how stupid that works out.

    Oh Captcha : MatthewHoogard.
  • ObiWayneKenobi 2010-08-03 19:01
    You can't compare Wasabi to this BobX shit since Wasabi serves a business need (it compiles to ASP or PHP so the end user can run it no matter their platform). BobX is just someone's take on "I don't like PHP so I'll make a parser that runs on top of PHP!"

    That said, the problem with Wasabi still is that anyone using the damn thing can't leverage that skill anywhere else since it's a homegrown language.
  • Jerim 2010-08-03 19:04
    From the article, it would seem that Bob owned the servers the company used and they were just leasing them. I don't know how Bob got the company to lease his servers, but he is a genius. He literally could hold the company hostage.
  • Bob 2010-08-03 19:04
    This is an extreme distortion of the situation.
  • Bob 2010-08-03 19:11
    TAKE THIS ARTICLE DOWN IMMEDIATELY
  • The 2-Belo 2010-08-03 19:40
    If only I had been here in time to post "Frist-eration!". I could have been a freaking legend.

    CAPTCHA: verto (the opposite of horizonto).

  • Look of Disapproval 2010-08-03 19:42
    ಠ_ಠ
  • Anonymous 2010-08-03 19:57
    The tags idea is not "that" bad. In fact, vBulletin uses <if> tags for their templates and it works pretty well. Of course, making the whole language (and not just the templates for the final HTML product) based on it is a dubious idea. Adding bobx to all the tag names is a little narcisistic and the whole assistant thing is retarded. But I love how well <if> tags work in vBulletin, I really do.
  • kahawe 2010-08-03 20:48
    AWKScooby:
    Sun's Identity Manager (now called Oracle Waveset) has their own version of Bobx -- Xpress


    I wouldn't have expected anyone knows of the gem that is XPRESS on here! And don't forget the great XML Object language in OW / IDM! They sure can't emphasize the difference between those two enough!

    I mean, it awkwardly gets the job done - you can get your customizations up and running without a full redeploy - but it is still a cute WTF.

    But I am not sure if using Javascript instead is a good alternative... though it is something you could do. :-)
  • blah 2010-08-03 20:55
    What's next? We find out that XBox is built on a Playstation?
  • yes it is 2010-08-03 21:19
    Did Bob go on to invent XSL thus ensuring similar experiences for millions of programmers similarly conned into lousy dead end jobs?
  • Cheong 2010-08-03 21:43
    I think while the use of BobX is WTF, Bob's concern about Christian's PHP injection code could be a valid one.

    If Christian didn't wrote it with care, that function could lead to all kinds of security vulunerabilities like when you try to inject your VB code (or any programming language you like) with batch commands through system() like calls.
  • EmperorOfCanada 2010-08-03 21:45
    Ten years of getting cheques while others had brain hemorrhages makes Bob pretty smart. Evil but smart.

    I have seen a BobX before and the fun lasted until a new Linux Kernel came out. This BobX was literally a modification of some core Kernel code. A year of heated architecture arguments were won in an instant.
  • Dani 2010-08-03 22:51
    Try to search BobX on google and see what comes up ;P
  • Daniel Sitnik 2010-08-03 23:09
    <xbobprint>Hahahahaha funny!</xbobprint>
  • Anon the Coward 2010-08-03 23:22
    ^ Idiot
  • sgt_shizzles 2010-08-03 23:29
    > "It's just a tool like Java, PHP, or C#."

    It's a freaking LOUSY tool, but I guess you could call it that.
  • Part-time PHP Programmer 2010-08-04 00:20
    I don't know this Bob, but I hope he reads this article and notices that I hope he gets hit by a big freaking truck. He's cheated Darwinism for far too long.
  • oheso 2010-08-04 00:48
    James:
    ... anyone who uses Comic Sans font for a professional IT website is a character


    Anyone who uses Microsoft FrontPage or Word to create HTML and advertises web development services makes me reach for a baseball bat.

    I wish this were the only example of that I've seen ...
  • Shinobu 2010-08-04 01:02
    <xbobif condition="amount <= 12" >
    
    ...Some HTML here...
    <xbobendif>
    The Real WTF® is that this isn't:
    <xbob:if xmlns:xbob="http://xbob.com/schema">
    
    <xbob:condition>
    <xbob:comparison xbob:type="lt">
    <xbob:operand>
    <xbob:variable xbob:name="amount" />
    </xbob:operand>
    <xbob:operand>
    <xbob:value xbob:type="integer">12</xbob:value>
    </xbob:operand>
    </xbob:comparison>
    </xbob:condition>
    <xbob:pass>
    <xbob:output>...Some HTML here...</xbob:output>
    </xbob:pass>
    <xbob:fail />
    </xbob:if>
  • omasque 2010-08-04 01:34
    BOB????
  • k1 2010-08-04 02:52
    blah:
    What's next? We find out that XBox is built on a Playstation?

    No, but XBobx is built on XBox, and you can run only snes roms on it.
    Hey, it is the same thing, anyway, isn't it? Puzzle games, adventure, RPG, FPS (duck hunt), etc: you can play your favourite type.

    CYA
  • Kenosis 2010-08-04 03:08
    One man's freedom-fighter is another man's rebel. Undoubtedly Christian managed to solve a couple of problems injecting php into BobX. Unfortunately this means introducing sections code "foreign" to the native environment.

    -KS
  • cicobuff 2010-08-04 03:27
    The scarry thing is that I went through an almost exact experience except that BobX is called MichealX.
  • Dave 2010-08-04 03:31
    DeGustibusNonDisputandumEst:
    Maybe you should ask this guy: http://bobx.co.nz/


    Located in Timaru... yeah, he probably does live in a hole in the ground as the OP suspected. And runs a laptop off a generator for when they turn the power off at 9 every evening.
  • TC 2010-08-04 03:54
    The WTFness was obvious at "half-wall cubicles". And don't get me started about PHP...
  • Sylver 2010-08-04 03:57
    J.R. "Bob" Dobbs:
    Corey:
    Is it? Is it???? I humbly refer you to http://www.codinghorror.com/blog/2006/09/has-joel-spolsky-jumped-the-shark.html


    I think Wasabi was already covered on TheDailyWTF (albeit with LOTS of obfuscation, the site called it WTFSL and the company was referred as a security company. I'm not linking the article due to Akismet being a PITA). This language is even *more* stupid than Wasabi since it isn't even compiled to PHP but runs *on top* of PHP (whose main selling points do not include speed)....

    To be fair, according to Joel, Wasabi doesn't just generate PHP. It also generate VBS and javascript. The issue they were solving was "how can you write the code once and then make an easy install on the client's own servers, regardless of the type of server. Their solution is to use something very similar to VBS (and compatible), so it looks like you could actually write in VBS and use Wasabi to generate PHP.

    In other words, wasabi sounds like a custom version of VBS with the added bonus of generating PHP on demand.

    The alternative would be to maintain different versions of the same codebase, or to force the client to install PHP on their servers as a prerequisite for installing Joel's software.

    That doesn't compare with a XML wrapper for PHP.
  • McK 2010-08-04 04:09
    James:
    I checked out the site:

    http://bobx.co.nz/

    ...and maybe it's just me, but anyone who uses Comic Sans font for a professional IT website is a character.


    Mate... have you ever *been* to Timaru? I don't think font choice is a primary concern. Sheep-dipping, yes.
  • Hal 2010-08-04 04:39
    LOL.

    Just like a tool? A parser inside another parser? ahahah
  • XBob 360 2010-08-04 04:45
    this reminds me of some software we were made to write for cisco phones a few years back. I say we were made to write, my then boss had the great idea of inventing our own vendor neutral xml-y format that would then be converted into cisco's own phone markup, another derivative of xml. for some reason best known to the boss we weren't allowed to use xslt transformations and had to build all of the phone markup in C# code. screens took days just to build up and the "rendering methods" were hundreds of lines long, littered with xpath, string.format and if statement nesting into double figures. I quit not long afterwards, but not before getting to know the System.Xml namespace rather bloody well.
  • Christian 2010-08-04 04:57
    A little gem in this that I think I just missed to mention: A seasoned programmer, using this language for 5 years now (which I find an unspeakable horror all by itself) Gave me an estimate for the reordering job: 2 full days at least, maybe more if you run into "problems" like white spaces in places it does not like, which the parsers does nothing to tell you where those might be of course. The job in PHP, would have been about 7 lines of code.

    And to add insult to injury, the environment had no version control actually, no development environment (the seasoned developer worked directly with an FTP capable text editor on the live scripts, which would upload it when he hit save), no backups of any kind in-house (bob does those) and allowed you no real debugging, because it ran the code in it's own parser.

    Looking under the hood, revealed over 500 functions defined (user defined, not internal ones!) and only 5 user defined classes being used. It must have been the best system ever, 10 years ago.
  • santo 2010-08-04 05:03
    This comment is justified only if you are Bob.
  • Christian 2010-08-04 05:13
    Did I ask about the environment? Yes. It's all handled by our partner, so we don't have to do it, saving us time and headache (makes sense, company is pretty small).

    Coldfusion? I was steering clear of it, but I found, when looking for other places where this abhorrend language was used (it's using a different prefix than bobx) similar things that were from coldfusion. My conclusion was he just tried rebuilding a "better" coldfusion inside PHP.

    Security? What security? Everyone in the office knew all the passwords for everything, that would allow you to copy and delete everything. And my code producing vulnerabilities is rather unlikely, when the entire page at one point probably runs an eval over the code.

    Oh and another tasty bit: The fields from the database, aka the assistants, are numbered. So you want the customers name, that is field number 1. You want his address, that's in fields 5, 6 and 7. Of course there are multiple companies running their "software", each with their own database setup. So while on company A the customer name is in field 1, it's probably in field 3 or 10 on the company B assistant. If you delete a field in between, they get renumbered too. Randomly. And your code has these numbers all over the place. No constants, no variables definitions possible to deal with the problem either, as it does curious things if you try to predefine variables.

    And deleting rows from the assistants by code is also funny. You run the delete query a few times in a row, just to be sure, as on the first couple passes it usually doesn't delete all.
  • not bobx really 2010-08-04 05:42
    bobx == ant amirite?
  • dr. Hannibal Lecter 2010-08-04 06:14
    I don't know who Bob is, but I so want to punch him in the face after reading this.

    That bastard.
  • Bob Hater 2010-08-04 06:31
    Get lost Bob you jobs worth.
  • nwbrown 2010-08-04 07:52
    You know that great language that you use every day at work (be it Java, C, C#, Python, Ruby, PHP, or whatever)? At some point in time it was also a homegrown language. TRWTF isn't that they invented their own programming language, or even that the one they invented sucked monkey balls (inventing languages is hard, so most attempts will fail). Its that they continue to insist on using it after it has been demonstrated that it sucks monkey balls.
  • Peter 2010-08-04 07:58
    Jerim:
    He literally could hold the company hostage.
    I doubt it, though he might be able to do it metaphorically, or hold the servers hostage literally.
  • Anon Too 2010-08-04 08:14
    oheso:
    James:
    ... anyone who uses Comic Sans font for a professional IT website is a character


    Anyone who uses Microsoft FrontPage or Word to create HTML and advertises web development services makes me reach for a baseball bat.

    I wish this were the only example of that I've seen ...


    For a small utility app that I had to write once, just to be a dick I set all the fonts to comic sans.
  • C4I_Officer 2010-08-04 08:33
    Am I the only one who thought of this Bob upon seeing the title?

    After all, it also had "Assistants"... scary!
  • Tom Oliver Rex 2010-08-04 09:00
    Drew:
    Did anyone else misread the title and expect a article about a new database type that was specifically for XML? I'm imagining a whole relational database made up of nothing but XML Blob columns...

    ...I scared myself.


    Be afraid, be very afraid. Especially if you work in retail systems in the UK, where one prominent-ish vendor does exactly that...
  • Goslingson 2010-08-04 09:03
    Daniel:
    Not only does the syntax look similar to ColdFusion, but the implementation is similar. ColdFusion is implemented as a Java Servlet so it's an interpreter running in a java byte code interpreter which is just as bad.


    Java hasn't been "interpreted" for about a decade now. You're fired
  • Kyle Z. 2010-08-04 09:05
    AbilideBob

    Captcha: sagaciter. maybe where Sagat has born?
  • DeaDPooL 2010-08-04 09:06
    icebrain:
    I like BobX [NSFW].

    On a serious note, that HTML tag-like system is used in WACT, but only in templates, where is fits.



    Damn you.
  • Bob 2010-08-04 09:11
    You lesser developers just don't have the mental horsepower to understand why my infrastructure is superior to your puny tools. Don't try to understand - just leave the hard stuff to us genius folks. I wouldn't want you to hurt yourselves.
  • zelly 2010-08-04 09:19
    Nice try, Bob.
  • cod3_complete 2010-08-04 09:50
    Bert:
    TRWTF is PHP.


    What!?!?!?! BobX has got to be running neck and neck with PHP. I give the edge to BobX in a close one.
  • Corey 2010-08-04 10:00
    Sylver:

    In other words, wasabi sounds like a custom version of VBS with the added bonus of generating PHP on demand.

    The alternative would be to maintain different versions of the same codebase, or to force the client to install PHP on their servers as a prerequisite for installing Joel's software.

    That doesn't compare with a XML wrapper for PHP.


    You're right... it's far worse.
  • Rory 2010-08-04 10:15
    BobX certainly sounds like the future! I hope I can keep up.
  • Snipes 2010-08-04 10:26
    Did anyone send a link of this article to the support address at bobx.co.nz? come on, we just >have< to know if its him ..... I'm not doing it though, a genius of that level might be able to track me down .....
  • Frank 2010-08-04 10:42
    Bob?
  • NSCoder 2010-08-04 11:16
    <xbobloop statement="AssistantName" >
    <xbobprint> .. write table content here .. <xbobprint>
    <xbobendloop>

    Oh, yes. Little BobX Tables, we call it.
  • Jason Evans 2010-08-04 11:21
    Bob sounds like he's a real gaylord, backwards, dumbass developer.
  • Doc 2010-08-04 11:29
    Yes, they would. We've had people write proprietary interfaces and code to duplicate/circumvent open standards time and time again. The main cause seems to be that open standards don't allow the architect to sufficiently express their own personal "genius", and also don't provide the necessary lock-in required to keep said genius employed long-term.
  • Developer 2010-08-04 11:36
    I'm not sure why there's such derision for BobX. It looks remarkably like ColdFusion to me.

    I mean, I spent two years in a ColdFusion job -- I took it thinking that disguising code as HTML was a stupid idea, and by the time I left I was sure that disguising code as HTML was a *really* stupid thing to do, and that any company that was dumb enough to use ColdFusion deserved to fail and lose all its investors' money, but clearly my opinion is not universal or ColdFusion would no longer exist.
  • What 2010-08-04 12:18
    Bob?
  • NorgTheFat 2010-08-04 12:36
    Well, I guess it's a step above MUMPS!
  • PotatoEngineer 2010-08-04 14:33
    We have something disturbingly like this at my company. It's an XML-based language that gets converted into Java objects/functions during the server's start-up sequence. (That's right, it's not compiled into bytecode, the parser goes through and generates Function and ReturnValue and Token objects.)

    I can sorta see the justification: we're getting the speed of Java, and the flexibility of a scripting language; there's no need to recompile the server every time somebody changes a report. Apparently, at least one of our (rather large) customers was worried that an actual scripting language would be too slow, and we caved. The drawback, of course, is that it's an in-house language. I'm never going to use this anywhere else.

    It has a number of quirks, like not being able to create a floating-point variable. In all honesty, I've never actually needed a floating-point variable in the work I've done on this thing, and the floating-point type exists and can be created by native Java functions and passed down to this XML-script layer, but it still scares me. And, of course, since it's an in-house language, I still run into obscure bugs from time to time, and the way any given function behaves when it fails is usually poorly documented. (i.e., does it simply not execute its child XML nodes, or does it throw an exception? It could be either.)
  • sam 2010-08-04 15:31
    If all you have is a hammer to solve problems with, every problem begins to look like a nail.
  • frits 2010-08-04 15:49
    sam:
    If all you have is a hammer to solve problems with, every problem begins to look like a nail.


    You're so profound. Did you come up with that yourself?
  • 404 2010-08-04 17:02
    I've spent years helping companies pry systems like BobX out of their lives. These "tools" are sold to them by inexperienced developers or overpaid consultants as wunderprograms that solve all problems.

    It usually takes years of programmers quitting and telling them how screwed up these systems are and how badly they got ripped off before they admit defeat. Its only then, when they see the price they have to pay people like me to dig them out of the hole they bought into do they ever realize the gravity of their mistakes.

    Everything we do makes the world better or worse. I'm glad to be on the good side of that equation.
  •  Ã¢â‚¬â„¢ÃƒÆ’à 2010-08-04 17:41
    sam:
    If all you have is a hammer to solve problems with, every problem begins to look like a nail.

    What happens when all you have to solve your problems with is BobX? Well, then you're screwed
  • Dr Bob 2010-08-04 17:53
    404:
    I've spent years helping companies pry systems like BobX out of their lives. These "tools" are sold to them by inexperienced developers or overpaid consultants as wunderprograms that solve all problems.

    It usually takes years of programmers quitting and telling them how screwed up these systems are and how badly they got ripped off before they admit defeat. Its only then, when they see the price they have to pay people like me to dig them out of the hole they bought into do they ever realize the gravity of their mistakes.

    Everything we do makes the world better or worse. I'm glad to be on the good side of that equation.


    Yes but at the end of the day, it's just as opaque a solution to the business. You're just another guy who comes along spouting crap, telling them everything needs changing, etc. What many of you fail to realize is the 'if it ain't broke, don't fix it' attitude that rightly pervades businesses who don't want to spend money unnecessarily.

    Unless it's core the the companies business, it really doesn't matter if some reports are a little bit painful to create / modify.

    The real solution is to go with standards, and reinforce the fact that anyone will be able to come in and break their system, instead of first having to learn the obscure language first.
  • Zylon 2010-08-04 18:56
    Dr Bob:
    Unless it's core the the companies business, it really doesn't matter if some reports are a little bit painful to create / modify.

    If the custom-built solution is proprietary, significantly slower, higher-maintenance, buggy, business-critical, and held hostage to the whims of a single company or, god help them, a single *individual*, then yes, it bloody well really does matter.
  • Killroy 2010-08-04 19:49
    I did exactly that... it was called HTAG and was written in in Delphi. But this was so long ago, that if I had stuck with it, I could have beat coldfusion at it's own game. Cf took several years to catch up with HTAG. HTAG still operates a business today. The source code for HTAG has long since been lost... I am ashamed.
  • amala 2010-08-04 20:50
    That is one smart programmer. That's called leverage man. He did his job, the people love him and he gets his large check every month.
  • Gabriel 2010-08-04 20:59
    Oh yeah? Well!
    We use OpenBobX!
    http://github.com/henriwatson/OpenBobX
  • John Muller 2010-08-04 21:05
    I'm surprised noone has mentioned XAML yet.

    TypeConverters really make it possible to work with XAML while staying sane.
  • SQLDave 2010-08-04 21:35
    Kyle Z.:
    pluma:
    SECOND!


    This guy posted first thinking that he would be the second...

    You have a serious lack of self confidence problem.


    I second that. HA!
  • SQLDave 2010-08-04 21:35
    Well, at least we now know what happened to Little Bobby Tables when he grew up.
  • frits 2010-08-04 21:56
    404:
    I've spent years helping companies pry systems like BobX out of their lives. These "tools" are sold to them by inexperienced developers or overpaid consultants as wunderprograms that solve all problems.

    It usually takes years of programmers quitting and telling them how screwed up these systems are and how badly they got ripped off before they admit defeat. Its only then, when they see the price they have to pay people like me to dig them out of the hole they bought into do they ever realize the gravity of their mistakes.

    Everything we do makes the world better or worse. I'm glad to be on the good side of that equation.


    May I suggest psychotherapy for your narcissism? BTW- You might want to substitute "VB" for "BobX" in my original post to get a clue.
  • David 2010-08-05 01:56
    Yo dawg, I heard you like parsers...
  • Dr Bob 2010-08-05 02:50
    Zylon:
    Dr Bob:
    Unless it's core the the companies business, it really doesn't matter if some reports are a little bit painful to create / modify.

    If the custom-built solution is proprietary, significantly slower, higher-maintenance, buggy, business-critical, and held hostage to the whims of a single company or, god help them, a single *individual*, then yes, it bloody well really does matter.

    Well if, as you point out, its "business-critical", its therefore arguably core to the business, and so there's no point getting all hot and bothered.
  • Dr Bob 2010-08-05 02:54
    Zylon:
    Dr Bob:
    Unless it's core the the companies business, it really doesn't matter if some reports are a little bit painful to create / modify.

    If the custom-built solution is proprietary, significantly slower, higher-maintenance, buggy, business-critical, and held hostage to the whims of a single company or, god help them, a single *individual*, then yes, it bloody well really does matter.

    Held hostage to a single company. You mean Microsoft / Apple?

    If a Company is dumb enough to get into a situation where a single bus can take destroy its critical business infrastructure (via the death of Bob) then I'd wager it's not Bob's fault at all.

    Dontcha just love nepotism? (the usual source of Bob's)
  • Gabriel 2010-08-05 04:04
    Oh yeah? Well!
    We use OpenBobX!
  • Bob's son 2010-08-05 05:33

    Dontcha just love nepotism? (the usual source of Bob's)


    Nepotism ? what's that ?
  • an anonymous bystander 2010-08-05 05:51
    Anon Too:
    oheso:
    James:
    ... anyone who uses Comic Sans font for a professional IT website is a character


    Anyone who uses Microsoft FrontPage or Word to create HTML and advertises web development services makes me reach for a baseball bat.

    I wish this were the only example of that I've seen ...


    For a small utility app that I had to write once, just to be a dick I set all the fonts to comic sans.



    I have been told several times that Comic Sans is more readable on screen than many other fonts, and is notably better for those with dyslexia or learning difficulties.

    Indeed, the British Dyslexia Association states in its guidelines:
    "Use a plain, evenly spaced sans serif font such as Arial and Comic Sans. Alternatives include Verdana, Tahoma, Century Gothic, Trebuchet."

    So, pause before pouring scorn on those who use Comic Sans - they may be doing so with good intentions...
  • Anonymous 2010-08-05 09:00
    an anonymous bystander:
    Anon Too:
    oheso:
    James:
    ... anyone who uses Comic Sans font for a professional IT website is a character

    Anyone who uses Microsoft FrontPage or Word to create HTML and advertises web development services makes me reach for a baseball bat.

    I wish this were the only example of that I've seen ...

    For a small utility app that I had to write once, just to be a dick I set all the fonts to comic sans.

    I have been told several times that Comic Sans is more readable on screen than many other fonts, and is notably better for those with dyslexia or learning difficulties.

    Indeed, the British Dyslexia Association states in its guidelines:
    "Use a plain, evenly spaced sans serif font such as Arial and Comic Sans. Alternatives include Verdana, Tahoma, Century Gothic, Trebuchet."

    So, pause before pouring scorn on those who use Comic Sans - they may be doing so with good intentions...

    Not to mention the fact that it is one of the most widely used fonts in existence and is even one of the 10 core fonts for the web (according to MS).
  • swedish tard 2010-08-05 09:30
    The *really* scary thing is everyone chipping in with "We have something similar at my work where XML is &magic to &real_languange...

    XML is an ugly abomination on its own, it should not be sodomised into a programming script/language. But still, the retards persevere, all over the place.
  • JC 2010-08-05 10:04
    Haha, that's funny. A BobX loyalist with his feathers ruffled. So BobX is just like C# eh? What happens, pray tell, when Bob gets sick? I'm sure it's just as stable, has just as solid a developer community improving and documenting and supporting it, just as many third party applications, can just as easily be ported to other systems if need be, has had just as much optimization done. This is a perfect example of a developer holding a company hostage. The management doesn't understand IT. They like having someone who's half-competent tell them "don't worry, I have things under control" and not have to look at the big picture themselves. The problem is, the other half is missing...
  • Tim 2010-08-05 11:09
    Damn. Now I want to write my own language. And become a shadowy recluse.
  • Montoya 2010-08-05 14:59
    I prefer PBP: Personal Bob Page (or, as they've renamed it, PBP: Hyperbob Bob-Processor).
  • DesGrieux 2010-08-06 07:11
    Guest:
    To me it sounds like "bob" simply tries to make sure he won't be loosing his stream of income any time soon ...


    Well done, Captain Obvious!
  • Dave 2010-08-06 07:27
    "I find all you BobX haters so frusterating. I mean, it's just a tool like Java, PHP, or C#. The real value is in getting the job done. And if I can do it using BobX, well screw you and good for me."

    I find all you Aramaic haters so frusterating. I mean, it's just a language like English, Spanish, or French. The real value is in getting the job done. And if I can do it using Aramaic, well screw you and good for me.
  • Count Carl von Cosel 2010-08-06 10:09
    Ahh, this is just like an e-commerce platform I am too familiar with. Except it's based on Java, Tomcat and JSP. And it's made by East Germans. They have added their own tags, and even a visual programming system in the style of visual RCX programming for Lego Mindstorms :) The development system is built on Eclipse, with EMF for the visual modeling things.

    Its wonders know no limits har har ;)

    For the curious, check it out at http://www.intershop.com/
  • anonymous coward 2010-08-06 10:31
    Shit we've got XaviScript in honour to one guy named Xavi !!
  • Anitox 2010-08-06 13:48
    Re-read the story, but replace BobX with Smarty.
  • BobX fanboi 2010-08-06 16:32
    BobX was also written by Bob's friend Neil. It was Neil and Bob who worked perilously long hours locked away in a small, let's say 'closet' sized, room. They spent days pounding code into one another's box while never coming out of that closet. Working that closely in such tight quarters presented Neil and Bob many challenges like how to reach around each other's box to give one another praise and accolades for such a job well done. Here's to Neil and Bob!!
  • This is for my name 2010-08-06 19:42
    in that he takes hostages and holds them for ransom.
  • Inti 2010-08-06 20:30
    This 'Bob' dude sure looks shady enough to inspire distrust. Looks like he got a juicy business in convincing unsuspecting clients to not use PHP and use his obscure script written in... PHP. I can tell that and I'm not even anything near code-savvy.

    By the way, googling BobX returns almost no relevant info (the first result is this: "The absolute HOTTEST women on this planet, Hot Women :: , Hot Asian Women , AV Idols and Japanese Girls" etc.).
    Only one in the lower results returns a "bobx computers, servers & networks" in New Zealand. The title is set in Comic Sans MS.
  • glove 2010-08-06 22:16
    It sounds like trying to build the Hubble Space Telescope with a caveman's stone tools (or maybe more appropriately, writing everything in assembly.)
  • Me 2010-08-09 10:01
    Why dont you use Brainfuck ? It's turing complete, afterall...
  • Christian 2010-08-09 10:50
    Inti:
    This 'Bob' dude sure looks shady enough to inspire distrust. Looks like he got a juicy business in convincing unsuspecting clients to not use PHP and use his obscure script written in... PHP. I can tell that and I'm not even anything near code-savvy.

    By the way, googling BobX returns almost no relevant info (the first result is this: "The absolute HOTTEST women on this planet, Hot Women :: , Hot Asian Women , AV Idols and Japanese Girls" etc.).
    Only one in the lower results returns a "bobx computers, servers & networks" in New Zealand. The title is set in Comic Sans MS.


    I used bobx to hide the guilty or rather the clueless. It has an x in it and those who ever forced to use it, will cry out in pain and out of sympathy for sure. Our national postal service is using it as well in some rather large applications and there are a few other large things running with it, among them some rather important bits of a town. I don't go there anymore.

    My guess is the spiel about it being enterprisy and "you just do the coding, we take care of the rest" has a large appeal to many companies, especially small ones. Once they are trapped, they are trapped for good. It will take a decade for them to dig themselves out of that hole. And I have a feeling in a decade there still will be pages where behind the scenes we will have a bobx tag somewhere doing god knows what. Or better "bob knows what, but he wont tell".
  • Ilya 2010-08-09 20:45
  • luis.espinal 2010-08-10 08:33
    frits:
    I find all you BobX haters so frusterating. I mean, it's just a tool like Java, PHP, or C#. The real value is in getting the job done. And if I can do it using BobX, well screw you and good for me.


    I can meet you halfway the argument that getting the job done is what matters with the caveat that the cost (in time and effort) for using whatever tool is mandated resides there, on the tool, and not on the programmer (assuming the programmer is sufficiently competent.)

    I think you need a little bit of perspective here.

    I had to work with a system just like this, which I'll call Xlang (the actual name omitted to protect the not-so-innocent.) What would take a few hours in any modern system (say, change the order of pages just as in the story) would actually take days. And that was the experience of every single programmer that encountered that bastard technology, be it a novice or a seasoned developer.

    There were these things called "Xlang services" (the almost equivalent of "assistants" in this story), which were supposed to be the wow thing of it.

    Thing is, just as in the story, you couldn't concatenate strings on the fly (much less compute fields). You had to create services for them. So you had a string concatenation service, an integer addition service, a date function service...

    ... and these weren't just function calls. The language was expressed in XML (as XBob was expressed with a PHP interpreter), so to call one of these services, it would parse the xml, take the arguments and marshall them off the xml into specific Xlang data structures which would then be unmarshalled into their java counterparts, the actual class that implemented the service had to be searched in a lookup table, instantiated, called with the arguments and the results marshalled back into Xlang data structures...

    all that just to firstName+lastName. And if you wanted to develop a "service" A that would call "service" B, you couldn't just call service B in java as you would call a function. You had to mimic the same marshalling/unmarshalling that takes place in XLang.

    There were if statements that always evaluated to true, no means to define procedures or functions in XLang. Wanted to reuse some existing code, write yet another new service (see the overhead of this in the previous paragraph.)

    To be fair, all tools had their shitty moments. And that was all dandy if all that mattered was to get the job done.

    [color]But that was not[/color].


    The inventor (someone who like Bob had a lot of pull in the company) actually expected people to program with this shit and deliver bug-free results faster than one would with a more robust, less-buggy and more modular solutions like the many we have out there.

    People who couldn't keep up with this were deemed incompetent and fired within 6 months (and not without a lot of insults and threats.) The inventor never had to do any large scale system with his invention. After crapping that deformed fetus on the company's unfortunate developers, he simply moved into "managing" the development teams.

    And this story (and the "Xbob" story) are NOT that rare. Some people implement their languages; other implement their own web frameworks or OR mappers. Sometimes they do well, but more often than not, they do a horrendous job that ends up increasing the cost of development.

    The invention of square wheels is greased by their developers' egos. It is almost never their inventions' fault, but the developers who aren't bright enough to wield their wonderful pet-projects.

    There are quite a few nutjobs out there who have never taken the fundamentals of software engineering or process management (much less taken a compiler and language design course) who actually think they can design a language or framework. And it's not that people shouldn't invent their own things, but that they should know what they are doing and they should understand the cost/benefit of using their inventions.

    And that's what is usually missing whenever you run into a XBob or Xlang shop: an understanding of the cost. And with that it comes the assumption that if a developer cannot get something to run with their bug-ridden, over-complicated system, then it is his fault. No matter if a thousand developers fail to meet the expectation, no matter the cost, it is always their fault. It is never a fault in their baby, pet-project inventions.


    There is a time and place to say, yes, getting the job is what matters.

    There is also a time where you actually have the right to hate the Xbox and the Xlang of the world. And that's the time to walk away.

    And here is where Christian (the character of the story) fouled up. He was hired to do work with Xbob, and he accepted the job.

    So his obligation was to get it to work with Xbob, not hack it with PHP (even if the solution was more elegant and workable.)

    If he couldn't get Xbob to work (or if he couldn't do the Xbob deliverables within the expected timeframes), then he should simply had said "I'm sorry, I cannot do it, I can't keep up with Bob. Thank you for the opportunity of working with you, but I'm not the right man for this job. I wish your company good luck and thank you for having me."

    He should have walked away and hated it rather than taking the paycheck and hack the job in a way he wasn't being paid for.

  • frits 2010-08-10 08:51
    You're a regular poster, so I'll give you the benefit of a serious response. This post was a riff of the predictable diatribe one hears whenever a technology (especially VB) is accused of being inferior. That's all.

    I was hoping the intentional misspelling of "frusterating" (taken from the article text) and the whole "well screw you and good for me" would be good enough indicators that I wasn't serious. Based on the shear volume of responses, I was wrong.
  • Bob 2010-08-10 21:36
    This is one of those times when I wonder who bob is and what the terms of his getting paid are. It almost smells like fraud with the boss actually being Bob.
  • sdonec 2010-08-11 14:28
    haha: "frits" is an anagram for "first"

    i agree though, BOBX FOR LIFE
  • binaryblade 2010-08-11 18:00
    go away bob
  • Pierre 2010-08-14 06:34
    Oh my god, I hope I never come accross this BobX :D How can you call a php tool a "tool like java or C#" xD
  • RK 2010-08-15 16:45
    Yeah - that's what I need -- a tool that makes my job harder...
  • aldo 2010-08-16 02:58
    I think we got multiple BobX in our compny too.
    2 in PHP and one in Java.
    I Could never understand why sometimes a developer need to feel he has built some in-house Language or Custom Framework to do exactely the same thing slower.
    Screw you all BobX creators, to lead developers in a dead end development career by making them working on some piece of shit you call Language or Framework.
  • JamieKitson 2010-08-16 11:57
    Sounds a lot like XSLT.
  • Hurp durp what okay sorry 2010-08-17 03:05
    It's clearly xBob not BobX. People really need to get their marketing right.
  • Daniel 2010-08-17 07:25
    Haahahahahahahahahaa! That's right soldier. Don't listen to them!
  • erewhon 2010-08-18 09:23
    I died a little inside after reading that article.
  • Anchorman 2010-09-23 16:32
    Every time a new job starts with “Welcome aboard!” it makes me want to jump ship. Except we're not on a ship, Brian!

    Arr, the better it sinks.

    BobX looks more like wreck-diving.
  • nick 2010-12-14 22:48
    coldfusion really did make me quit my job
  • Reow 2012-03-11 19:04
    Good work on making yourself unhirable, Christian. You disobeyed a direct order around the technology to be used. If you were incapable of programming in the required language, you should have done what you suggested and resigned immediately. If you pulled a stunt like that on my team, you'd be out the door the day you arrived.

    TRWTF is no code review. Why wasn't this detected immediately?
  • ObiWayneKenobi 2012-12-07 16:26
    I never understood why anyone sane would ever come up with their own language or continue to use it. I mean, even if you could justify using a proprietary language, who the hell wants to work for a place where the knowledge they'll learn can't be used at any other company? Most people, especially in software, don't stay in the same company for more than a handful of years; you would be crazy to work for a place where you won't learn anything transferrable. Maybe if you plan to coast along until retirement, but you'd get laughed out of an interview for, say, a PHP developer if you spent the last 4 years working in "BobX" and not PHP. Good luck ever getting a development job after that.
  • Wlademyr Mendes 2013-02-20 17:14
    Really? You cant be serious.
  • Scott Phillips 2014-02-21 17:43
    I met BobX in 1997 and he worked for me from 1998-1999. Holy f***cking s**t that boy is smart. Crazy... fingerpainting in his own shit crazy but I've never met somebody so much fun, before or since. I'm trying to track him down - he has lots of friends in Australia who miss him, so Bob, if ever you read this, find me (on facekak or same old email)
  • BobX Hater #65355 2014-07-11 11:01
    Yeah I am just going to have to stop you there and say troll...