• Unregistered (unregistered)

    If I wanted to write bad programs in Excel I'd be an accountant

  • (cs)

    That's one way to make your code self-documenting. Here, the documentation IS the code!

  • (cs) in reply to Unregistered
    Unregistered:
    If I wanted to write bad programs in Excel I'd be an accountant
    No, you'ld be the accountant's secretary.
  • (cs)

    This story reminds me of a contractor that worked for a client of ours. His job was to develop the hand-held application as the client app to our web service. His design was such that his app would make a web-service call to retrieve the UI description which would tell the client app how to render the widgets. His idea being that you could simply change that textual markup, have the app download the updated file, and WahLah, the UI would reflect the changes! We were skeptical.

    Well we're sitting in a meeting one day and he's describing his awesomeness to management. They ask him if he has created a read-only version of these forms. At this point I'm thinking "wow - his design might actually be worth something if all he has to do is flip a bit in his text file to achieve this". But alas no - his response was that supporting such a feature would take a complete rewrite of his code. Oh well.

    suzilou

  • (cs) in reply to suzilou
    WahLah
    Is it possible that you are not being ironic as you write "voilà"?
  • PKM (unregistered) in reply to gramie

    Hey, at least it's not "viola!". Every time I see that it's like fingernails running down the blackboard in my brain.

  • Steve the Cynic (unregistered) in reply to PKM
    PKM:
    Hey, at least it's not "viola!". Every time I see that it's like fingernails running down the blackboard in my brain.

    Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.

  • some guy (unregistered)

    Alright, I'll be that guy today.

    So they generate the UI code from metadata. The generated code is ugly, but it works and you don't have to maintain it, and IMHO the most well-written GUI code is still ugly. So the particular choice of generator and storage format isn't ideal, but I must be missing something. Where's the WTF again?

  • grzlbrmft (unregistered) in reply to some guy
    some guy:
    Alright, I'll be that guy today.

    So they generate the UI code from metadata. The generated code is ugly, but it works and you don't have to maintain it, and IMHO the most well-written GUI code is still ugly. So the particular choice of generator and storage format isn't ideal, but I must be missing something. Where's the WTF again?

    You want to be THAT guy? Go back to TheDailyItIsNotPerfectButItWorksSomehow.com!

  • Alacrity (unregistered) in reply to Steve the Cynic

    Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.[/quote]

    Actually a String Quartet would be fine without it.. You see a Viola and a Violin are actually the exact same size, it's just that a violinist head is bigger.

  • (cs)
    Where's the WTF again?
    There was the mention that the result on a Blackberry looked like the sort of user interface you'd expect on the type of mobile phones they used in 'Miami Vice'.
  • the monthly WTF (unregistered) in reply to some guy
    some guy:
    Alright, I'll be that guy today.

    So they generate the UI code from metadata. The generated code is ugly, but it works and you don't have to maintain it, and IMHO the most well-written GUI code is still ugly. So the particular choice of generator and storage format isn't ideal, but I must be missing something. Where's the WTF again?

    The path to Hell is paved with good intentions. His idea might be good. But he just didn't have to skill to implement it. :) And the idea doesn't count; the end product counts.

    PS. I write a lot of C++ code generation code in python.

  • t (unregistered)

    I think Adam used to work where I'm working right now!

  • Zapp Brannigan (unregistered) in reply to amischiefr
    amischiefr:
    Unregistered:
    If I wanted to write bad programs in Excel I'd be an accountant
    No, you'ld be the accountant's secretary.
    No, you would be the summer accounting intern they hired to work on the project that IT was too busy to do. But now has to support.
  • (cs) in reply to Steve the Cynic
    Steve the Cynic:
    Rubbish. A viola is a perfectly respectable musical instrument

    Burns longer than a violin, too.

  • by (unregistered) (unregistered) in reply to PKM
    PKM:
    Hey, at least it's not "viola!". Every time I see that it's like fingernails running down the blackboard in my brain.
    viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola! viola!
  • does it matter? (unregistered) in reply to Alacrity

    [quote user="Alacrity"] Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.[/quote]

    Actually a String Quartet would be fine without it.. You see a Viola and a Violin are actually the exact same size, it's just that a violinist head is bigger.[/quote]

    And the violin has an high 'E' and missing a low 'C' for strings.

  • Nite (unregistered) in reply to Zapp Brannigan
    Zapp Brannigan:
    amischiefr:
    Unregistered:
    If I wanted to write bad programs in Excel I'd be an accountant
    No, you'ld be the accountant's secretary.
    No, you would be the summer accounting intern they hired to work on the project that IT was too busy to do. But now has to support.

    you're that guy? Come here, I have a baseball bat with your name on it. I hate supporting that project.

  • (cs) in reply to gramie
    gramie:
    WahLah
    Is it possible that you are not being ironic as you write "voilà"?

    Are you, sir, referring to the Haïtian phone company or, perchance, to the hotel guest loyalty program of the same name?

  • v.dog (unregistered)
    grzlbrmft:
    some guy:
    Alright, I'll be that guy today.

    So they generate the UI code from metadata. The generated code is ugly, but it works and you don't have to maintain it, and IMHO the most well-written GUI code is still ugly. So the particular choice of generator and storage format isn't ideal, but I must be missing something. Where's the WTF again?

    You want to be THAT guy? Go back to TheDailyItIsNotPerfectButItWorksSomehow.com!
    That would be thereifixedit.com. It's all physical fixes, however. Someone should really make a site like that for code.

    Oh, wait.

  • v.dog (unregistered) in reply to does it matter?

    [quote user="does it matter?"][quote user="Alacrity"] Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.[/quote]Actually a String Quartet would be fine without it.. You see a Viola and a Violin are actually the exact same size, it's just that a violinist head is bigger.[/quote]And the violin has an high 'E' and missing a low 'C' for strings.[/quote]That's OK. The definition for 'perfect pitch' with either is throwing them in a dumpster without hitting the rim.

  • Anonymous (unregistered)

    TRWTF is all the viola comments that were sparked by the mention that someone didn't make a mistake.

  • (cs) in reply to SuperAnalyst
    SuperAnalyst:
    Here, the documentation IS the code!

    In Soviet Russia....

  • (cs)

    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way? As soon as the word "spreadsheet" is read or uttered, the story is already clear: "genius" comes up with a brillant plan to use a spreadsheet to do what code should be doing.

    And what's with these outdated error pages I keep getting?

  • Downfall (unregistered)

    I'm also not seeing the problem. It's a non-conventional platform, but it may well be the best way to handle coding for the Blackberry. I've never done it-- have any of you? For all we know, this truly is the best solution to a difficult environment. Without knowing how or why this was implemented, we have no idea if Carl was the WTF-er, or the WTF-ee doing the best he could in a bad environment.

  • silent d (unregistered) in reply to lolwtf
    lolwtf:
    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way? As soon as the word "spreadsheet" is read or uttered, the story is already clear: "genius" comes up with a brillant plan to use a spreadsheet to do what code should be doing.

    And what's with these outdated error pages I keep getting?

    those error messages are being read from a spreadsheet, of course.

  • Anonymous (unregistered) in reply to Downfall
    Downfall:
    I'm also not seeing the problem. It's a non-conventional platform, but it may well be the best way to handle coding for the Blackberry. I've never done it-- have any of you? For all we know, this truly is the best solution to a difficult environment. Without knowing how or why this was implemented, we have no idea if Carl was the WTF-er, or the WTF-ee doing the best he could in a bad environment.
    I've coded for mobile devices (including BB) and I can assure you that this is not "the best solution to a difficult environment". It is a retarded solution for a platform that is extremely easy to code for.
  • (cs)

    The other day I made a comment on a coworker's use of a spreadsheet. The moment he said "Excel" during a metting with several managers, I just laughed... He didn't appreciate it.

  • (cs) in reply to does it matter?
    does it matter?:
    Alacrity:
    PKM:
    Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.

    Actually a String Quartet would be fine without it.. You see a Viola and a Violin are actually the exact same size, it's just that a violinist head is bigger.

    And the violin has an high 'E' and missing a low 'C' for strings.

    And that C string is invaluable for scoring the scene where the baby dies.

  • (cs) in reply to gramie
    gramie:
    WahLah
    Is it possible that you are not being ironic as you write "voilà"?

    To quote Daffy Duck, "All I can say is French people can spell a lot better than they pronounce!"

  • Level 2 (unregistered)

    There exists a development system called uniPaaS that generates business applications from meta-data.

    Name of the company that build uniPaaS? Magic.

    Coincidence?

  • (cs) in reply to ubersoldat
    ubersoldat:
    The other day I made a comment on a coworker's use of a spreadsheet. The moment he said "Excel" during a metting with several managers, I just laughed... He didn't appreciate it.

    Outright laughter isn't quite the most constructive type of feedback you could've given, so I can understand why it went unappreciated...

  • Daryl (unregistered)

    What could possibly be worse than a Viola?

    Two Violas.

  • Ken B (unregistered) in reply to Zapp Brannigan
    Zapp Brannigan:
    amischiefr:
    Unregistered:
    If I wanted to write bad programs in Excel I'd be an accountant
    No, you'ld be the accountant's secretary.
    No, you would be the summer accounting intern they hired to work on the project that IT was too busy to do. But now has to support.
    Which is why the IT department wouldn't let you hire that intern in the first place.

    On the other hand, sometimes the IT department simply gets in the way.

    Back in the mid-90's, the small (~20 people) company I worked for was bought by a division of a subsidiary of a large Fortune 100 company. (The division relied on a commercial database package that we had written, and decided it was in their best interest to own the company that wrote it.) Well, the division's parent company had a large IT department, along with all the corporate layers and procedures that come with Fortune 100ness. When my boss learned that his boss' department needed a new report, and the IT department had told him that it would be "several months" before they could get to it, my boss took the specs home over the weekend and came in Monday morning with the report done. (Using our database, of course, and not the IT's COBOL [or whatever they used] programming.) He offered it to them for free. They wouldn't take it, citing that the IT department wouldn't allow it. He told them "why not use this until the IT department gets around to your request?" They still refused -- afraid that the IT department would "find out".

  • (cs) in reply to Maurits
    Maurits:
    does it matter?:
    And the violin has an high 'E' and missing a low 'C' for strings.
    And that C string is invaluable for scoring the scene where the baby dies.
    Personally, I'm partial to G strings. Particularly with air on them.
  • Ed (unregistered) in reply to lolwtf
    lolwtf:
    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way? As soon as the word "spreadsheet" is read or uttered, the story is already clear: "genius" comes up with a brillant plan to use a spreadsheet to do what code should be doing.

    Spreadsheets get used a lot in game development. It works well for storing settings / text strings / etc that need to edited by the non-programmer members of the team.

  • shimon (unregistered) in reply to suzilou
    His idea being that you could simply change that textual markup, have the app download the updated file, and WahLah, the UI would reflect the changes! We were skeptical.

    Hey wait, isn't it Fring you're talking about? Especially that this part

    But alas no - his response was that supporting such a feature would take a complete rewrite of his code. Oh well.

    applies to it very well.

  • SR (unregistered) in reply to steenbergh
    steenbergh:
    Outright laughter isn't quite the most constructive type of feedback you could've given, so I can understand why it went unappreciated...

    Constructive, no. Appropriate, yes!

  • Banana Hammock (unregistered) in reply to Maurits
    Maurits:
    ... C string ...

    I hate having to work with C strings

  • threecheese (unregistered) in reply to Banana Hammock
    Banana Hammock:
    Maurits:
    ... C string ...

    I hate having to work with C strings

    But I Love working with G strings...

  • nonny nonny (unregistered) in reply to lolwtf
    lolwtf:
    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way?

    We use them to aid developers in defining enumerations.

    For example, in a very large real-time system (500,000 lines of code) there are hundreds of possible error codes the system can generate. The same code is used in different products, each with a slightly different configuration. So product A might be able to generate ERROR_WIDGET_NOT_INITIALIZED but product B doesn't use widgets so this error isn't reported.

    Spreadsheets list the error codes, whether they're supported in a given product, and all the data and strings associated with it (e.g. error 313, WIDGET_NOT_INITIALIZED, "Widget Not Initialized", "Please make sure the widget carrier is powered on").

    The spreadsheet is saved as XML and at compile-time a Python script parses the XML and spits out the appropriate header files for C++ inclusion.

  • Nameless Developer (unregistered)

    This reminds me of something that happened to me. I was on a summer work term, and my boss was the resident guru at the company. During the summer I mostly just got to maintain and do minor bugfixes in his old code (which was 90% hand coded assembler) which freed up his time to work on the next generation graphics engine that was to be the basis of all future products.

    During the summer, the CEO kept trying to convince me to sign a full time contract. I kept turning him down because I was still in school and wanted to move to another city anyway, but eventually he convinced me to sign on. The day after I signed the contract, my boss announced that he was leaving and that I would inherit his new graphics engine. I was pretty nervous... it was a big responsibility.

    On the day he left, he came by my desk and said "don't worry, the new engine is written in C and it's really straightforward". He pointed me to where it was in source control, and then left.

    It was straightforward alright: I think the entire codebase was less than a thousand lines. It was basically an empty shell of a graphics engine... just some ideas written down about the framework. I pretty much had to start from scratch.

    That was definitely a "WTF" moment for me, especially because I had been somewhat duped by the CEO into signing on for probably less money than I should have. Anyway, the WTF moment quickly passed as I realized I had a clean slate to architect the new engine any way that I wanted. It pretty much turned out to be my dream job, which is why I'm still here a decade later, still adding features to the fifth version of my graphics engine which forms the basis of all of our products.

  • My Name (unregistered)

    I also have to agree that I don't see the huge WTF here.

    This company had to generate applications on a wide variety of mobile platforms, not only BlackBerries. Each platform probably had its own SDK to use.

    So the solution was to separate the UI design in a common meta format. I don't see the WTF in this.

    Is it the fact that it was stored in CSV instead of XML? I don't see the problem here. And Excel (or "Calc" for that matter) is perfect for editing CSV files.

  • nonny nonny (unregistered) in reply to nonny nonny
    nonny nonny:
    lolwtf:
    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way?

    We use them to aid developers in defining enumerations.

    Oh, and I forgot to mention, that same spreadsheet can then be used to generate tables in Microsoft Word for inclusion in our design documents, appendices for customer support documents, checklists for testers, tables for test documents, etc.

    Write it out once, use it everywhere.

  • Not John Cage (unregistered) in reply to Steve the Cynic
    Steve the Cynic:
    PKM:
    Hey, at least it's not "viola!". Every time I see that it's like fingernails running down the blackboard in my brain.

    Rubbish. A viola is a perfectly respectable musical instrument, and a string quartet would look quite odd without one.

    Whereas fingernails running down a blackboard would only be a good chamber instrument for performing John Cage.

  • Dave C. (unregistered) in reply to Banana Hammock
    Banana Hammock:
    Maurits:
    ... C string ...
    I hate having to work with C strings

    Nonsense. Without them what would C++ strings have to be better than?

  • abbas (unregistered) in reply to My Name
    My Name:
    I also have to agree that I don't see the huge WTF here.

    This company had to generate applications on a wide variety of mobile platforms, not only BlackBerries. Each platform probably had its own SDK to use.

    So the solution was to separate the UI design in a common meta format. I don't see the WTF in this.

    Is it the fact that it was stored in CSV instead of XML? I don't see the problem here. And Excel (or "Calc" for that matter) is perfect for editing CSV files.

    The wtf being IMHO, that aiming for the smallest common denominator gets you something very bad. IE, the only thing pretty much all animals have in common is that they generate poo. Thus, the uberallencompassing animal would be a pile of poo. ;) I know it is halting badly, but that is generally what you get when you try to make something like that. Better to develop an API and implement it for each platform so you can just move the same code around in that case. Something like, I dunno... J2ME for phones? ;)

  • Ken B (unregistered) in reply to nonny nonny
    nonny nonny:
    lolwtf:
    I wonder, has anyone ever used a spreadsheet in software development in a non-WTFy way?
    We use them to aid developers in defining enumerations.

    ...

    I think this is just another example of "spreadsheet as a database".

  • Booboo (unregistered)

    Development of apps that have to run on hundreds of different phones often uses this type of ugliness... games especially because the different models typically each require special tweaks to get high performance or circumvent missing APIs.

  • Grump ol' Coder (unregistered)

    TRWTF is all the code-tards who think describing UI elements in a non-code format and auto-generating the UI code is somehow a WTF.

    Here's a news flash for you clueless nubs out there gloating about Excel doing what real code should be doing: real code is doing it. The real code, generated by the codegen application using the stuff which was edited in Excel.

    I don't hear any of you snickering about Eclipse or Visual Studion doing what real code should be doing.

    Yeah, Excel is a pretty bad choice for an editing tool, but it's not the worst.

    As to the lol-able idea of storing all those UI elements in a separate file and compiling them in later: It's good enough for Windows, GNOME (oooh, runtime resource files! EVIL), KDE, MacOS... in most modern operating systems or windowed desktop environments, in fact.

    Welcome to the 21st Century, kids.

Leave a comment on “BlackBerry UI Magic”

Log In or post as a guest

Replying to comment #:

« Return to Article