IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Lisp or Smalltalk or something else?
Questions at the end.

The tall dude was just forced to grow up at work.

His boss did a doubletake, realized she hated perl, and it was
suddenly everywhere. It is now FORBIDDEN! And do NOT enhance
anything already done. And get RID of anything already done
as soon as possible.

No matter how productive.

It reminded her of me. They have a couple of core systems that
run their shop. I wrote both of them. 3 years later, she bitches
she wants to kill them and everyone else road bocks. Awwwww.

It would take less than 1 week for 1 individual to learn enough to
take ownership. I hired him, but he was reassigned.

His primary focus is C#. He's a hard core windows geek, but
open minded enough to look aside for input.

90% of the code I left behind was in C# dammit. 2 multi-tabbed
applications, lots of database interactions, and then scanned/printed
barcoded PDF forms for tracking.

It's was fun, but perfectly killable. My 2nd C# app. UGLY!
Go ahead, kill it already.

But they still use it. And she bitches. And hates it. It was mine.

Did I mention how much his boss hates me? She probably wakes up
screaming my name, and not in a good way.

So anyway, she forbids the Perl and tell him to rewrite everything in
C#.

He comes home furious. We have a nice discussion on how it is
good for his resume (and thought processes) to pickup multiple
languages.

They gave him a book budget, and a playtime budget, and access
to the guy I hired to replace me (on the Perl side) but is now
their #1 C# coder.

The C# guy gives him a lecture on how to do certain things, and says
multiple times how it would be really tough to do that in perl.

The boy responds with the easy quick implementation of whatever
the guy says would be difficult. The boy has only been coding
a couple of months, maybe 5 days hardcore. And he shows the
C# guy how easy it really is.

Doesn't matter. Forbidden. Ok, for each C# assignment, implement
in perl (if possible or desirable) for experience and library
building.

A very good place to be, and to learn, as long as the boss stops
dropping grenades into the playpen.

Did I mention he's going out with her daughter? Seriously.

Some day I might be sitting across the table from her at the wedding.

So last night we were having our evening relaxation period and he
looking at the new install of Liquid Lemur (Xfce) and checking out
some Gimp stuff (he's a heavy graphical user, both for desktop print
production tasks and his own art usage).

I mentioned how you can use the built in scripting language to
call pretty much anything the menu can do, and then some, to
automate any task within Gimp. He thought of it as a macro pushing
buttons.

No no no. A REAL language that can do anything the interface can do,
and then some. Not via the menu.

Here, it's called scheme, no more relaxation for you until you've
read and absorbed a single page of the tutorial. OK?

He agreed.

After about 10 minutes he started making very odd noises, and we
discussed. He was absorbed for the next hour.

Bottom line: HE LOVES IT!

The language, the syntax, the mathematical model that it implements,
he just loves it. It works like his brain.

On the way out this morning he mentioned rather than go full out
on scheme, he should really learn lisp.

And he wants a "real" development environment. This means interactive
debugging and incremental code compiling, at least to me.

1st question if you've read so far:

What is the best (if choices) development environment for lisp that is
free, and preferably works in Linux.

#2: Is there a smalltalk equivalent (or better)?
New Dunno. But on the perl stuff...
How hands-on is she? Could you just bury all the perl stuff in a library and just call that from C# and keep her happy?

I gather sensible things like that aren't an option, but thought I'd throw it out there just in case.

Good luck.

Cheers,
Scott.

New Oh, he schemed
He had all these brilliant ideas about how he'd bury it.

I shot every single one down, not because they weren't technically feasible, but they were a directly fire-able offense.

When done, I detailed the politics of the issues (and the people 3 levels above him), and he came to the rational conclusion to take the year to build skills in anything he can, as long as it is either interesting or marketable. Things that interest him can be on "own time" at home, but the company owns his ass while he's there, and C# is marketable, and you can always blame MS when something fails.

He needs to recruit a 2nd that they trust to fill in for him if he wants
to write in perl. And then he goes through channels. But he buries NO
code. That's the evil programmer mentality, and I'd stop training him
if he develops it. Too limiting a world-view.

New #2 == Squeak
Remember Todd Blanchard? He is a Squeak nut.
New Re: Lisp or Smalltalk or something else?
Emacs is a LISP coding environment, and a damn good one because huge portions of Emacs are written in LISP. Well, ok, elisp, but close enough.

On the Gimp thing, Gimp macros can also be written in Python as well. He might get a kick out of writing macros in both Scheme and Python and comparing the difference. I've written Python Gimp macros, incidentally: I have one that will take a selection in an image and turn it into a black image mask, trimmed for size and ready for use to colorize a map based on data (similar to a heatmap but with discrete boundaries).

I'm glad he's so interested in how things work as opposed to just wanting to get through it. That's commendable.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New squeek is interesting but dunno how marketable
a lot of mortgage and security fraud companies use ruby on rails, that is marketable in the financial industry. Most of the java coders I work with now are C# guys
Any opinions expressed by me are mine alone, posted from my home computer, on my own time as a free American and do not reflect the opinions of any person or company that I have had professional relations with in the past 55 years. meep
New Ruby and financial companies
Interesting... all of the financial companies I know use Java, not Ruby. Ruby isn't even on the radar, kind of like "wha...?".
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New they use the mq for messaging
Any opinions expressed by me are mine alone, posted from my home computer, on my own time as a free American and do not reflect the opinions of any person or company that I have had professional relations with in the past 55 years. meep
New You mean Perl MQ?
POE::Component::MessageQueue

Are you so sure?
New no
http://blog.andrewvc...to-know-braindump
Any opinions expressed by me are mine alone, posted from my home computer, on my own time as a free American and do not reflect the opinions of any person or company that I have had professional relations with in the past 55 years. meep
New Yeah, but Ruby?
It's slower than Perl, Python, Java, and just about everything else.

All of the above have ZeroMQ clients as well.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New slow vs faster dev time?
Any opinions expressed by me are mine alone, posted from my home computer, on my own time as a free American and do not reflect the opinions of any person or company that I have had professional relations with in the past 55 years. meep
New Does it really matter?
Doing it faster in dev time...

Perl has CPAN, its ginormous. If you typically want something its there. Even if you don't like what is there, you can look at it and fix it up or make a new module.

Feck man, Perl is so complete, I have yet to look for something that was there at least in a usable state.

Perl is also very fast. So fast it makes my head spin on fast new hardware. Heck on 6 year old hardware its fast. Even on 500MHz P3 hardware its fast.

Dev time is far out-trumped by production speed anytime. Perl is scalable and very well known by many people. Yes there are more Java and C# junkies out there... but a good Perl chef can whip something together just as fast and work it.
New Nope
I would never suggest Perl for anything other than batch processing (with hesitation) or shell scripting.

We've got a few hundred thousand lines of it here. Never never never. Well, maybe if you have 4 Bens or Barrys on staff, but in the hands of mere mortals and people who think they are gods it's a swamp.

I'm sure Barry will have something to say about this, but Perl is too dangerous in the hands of people who like complexity.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New Agreed
90% of teaching a perl programmer is forcing him to read the Tao of Programming and quizzing him on it, and then read the 1st several chapters of the AUP, and quizzing him on it, and really pounding in that other people were going to maintain this code. Some day. Every piece of code has a life, and it may outlive you.

Do NOT force the next guy to decode your brain state.

I would not allow him to code for about 3 days because he didn't do his homework. Allow is a bit strong, but when I refused to review his code, it sunk in.

So anyway, most never got this stuff beat into them, they whipped out some code, it seemed to work, and a new career was born.

He's decided to dive into Lisp for a bit and is working in the Eclipse environment. It annoys him when he is doing an exercise that he could just whip out in Perl. I told him to withhold judgment until he got all the fundamentals of the language.

Anyone here know Lisp? I sure don't.
New I with I did know lithp.
It thure theemth interethting.
New I've done LISP
I wouldn't say I know it, however. It's one of those languages that takes a long time to master.

I personally don't find it all that compelling versus the cognitive load required.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New Depends on the industry
Dev time is far out-trumped by production speed anytime.

In the financial industry, sure. And airline booking ... anything with insanely high transaction volumes. But for the rest of us, where the majority of execution time is handling user interface, dev time is far more valuable.
--

Drew
New Not in the financial world
Here it's about transaction speed, safety (very conservative), and then time to market.

Dev time with Python is just as fast as Ruby (better in my opinion).

Where are you hearing this from? I'm very curious.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New I seem to recall
complaints about Java being slow at one point.
New Re: I seem to recall
The prodigious throughput of modern hardware has rendered moot many (but not all) of the traditional performance differences between platforms such as Java and those which are natively compiled.

Certainly, Java is Fast Enough these days for most things.
New Yes but...
Perl is *SO MUCH* faster than Java on equivalent hardware with similar loads.

Heck, we use a Java Data Warehouse Reporting tool. It sucks.

We have made it into a "Presentation only" tool. We can do the same report data extraction with Perl and Shell on 6 year old hardware in 1/10th the time and passing fully populated short-term/temporary tables to the "tool" to render the "PDF" or "XLS" or what have you, than if the whole thing with was done almost brand new hardware withe the "tool".

Yes, its true, if you want faster clustered performance out of Java, just add more cores/processors and memory. But the point is, I can get nearly 90% more work done on older hardware not using Java.

No to mention, start-up loading times for Java *really* blow on new hardware. Worse than the time does for even the BIGGEST Perl programs we have on 6 year old hardware.

Its hard to believe that Intel and AMD doesn't praise Oracle (formerly Sun) for making Java such a pig!
New Re: Yes but...
Perl's a maintenance horror.

Java, less so.

If I save £20K on hardware but burn through an additional £50K in software maintenance (easily done), I'm £30K down; for all but the most performance-critical applications, no one upstairs is going to care that it's OMG FAST!!, they're just going to extract my gonads for overspending.

My experience is that, for a bespoke system with (say) a five year lifespan with software maintenance (not just bugfixes, but features and stuff) included, hardware is 10% or thereabouts of the total cost.
New We aren't experiencing...
Maintenance horrors. Its only because you can't find good Perl coders. Sucks to be you.

We write maintainable Perl. Even the stuff 10 years old is still easily maintainable, a bit archaic, but easy to maintain.

And you are talking different budgets and types of expenditures. Capital Expenditures are typically horribly hard to push through and justify. If you've got wetware already working... its easy to have them fix it.

Though, you don't have good (as in real ones not "think I am") Perl programmers.
New You are confusing two things:
Java the language vs. poorly written Java programs.

Straight out, Java is considerably faster than Perl. For maintenance, with similarly skilled developers, Java is better than Perl. Hell, Python is faster than Perl, and significantly easier to maintain as well.

For startup, well, Java isn't meant to be run as a short-run script like Perl. Startup time doesn't matter for anything other than a script that runs in an amount of time similar to startup time, after all. For batch processing, long-running server processes, and other such programs it simply doesn't matter.

Incidentally, if you're talking about Pentaho then yes, it really truly sucks. Don't use it. I'll add, however, that general reporting tools are usually slower than custom-built scripts. The former might not need a programmer involved, however, and the latter definitely does.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New And they're working on it
But again, financial companies are about conservatism and safety.

Incidentally, we have some Java code here that runs significantly faster than the exact same code in C++ (parser and expression language execution). Both implementations were written by people I consider to be extremely capable, and both have been tuned within an inch of their lives, but the Java is still faster.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New Now that is...
Effing unbelievable.

But coming from you Scott, on this kind of stuff, is significant!
New Re: Now that is...
Java optimizes the code that's running. C optimizes the code you're going to run. The difference can be significant.
Regards,
-scott
Welcome to Rivendell, Mr. Anderson.
New Damn straight
It optimizes with knowledge of data flow history and code path transversal. A few passes of data and it can rewrite your core hot spots. CPUs just got fast enough that this type of optimization is possible in real time and people don't get annoyed by the initial "sluggish" moment while the overhead of the optimizer tanks the system.
     Lisp or Smalltalk or something else? - (crazy) - (28)
         Dunno. But on the perl stuff... - (Another Scott) - (1)
             Oh, he schemed - (crazy)
         #2 == Squeak - (folkert)
         Re: Lisp or Smalltalk or something else? - (malraux)
         squeek is interesting but dunno how marketable - (boxley) - (23)
             Ruby and financial companies - (malraux) - (22)
                 they use the mq for messaging -NT - (boxley) - (21)
                     You mean Perl MQ? - (folkert) - (1)
                         no - (boxley)
                     Yeah, but Ruby? - (malraux) - (18)
                         slow vs faster dev time? -NT - (boxley) - (7)
                             Does it really matter? - (folkert) - (5)
                                 Nope - (malraux) - (3)
                                     Agreed - (crazy) - (2)
                                         I with I did know lithp. - (pwhysall)
                                         I've done LISP - (malraux)
                                 Depends on the industry - (drook)
                             Not in the financial world - (malraux)
                         I seem to recall - (S1mon_Jester) - (9)
                             Re: I seem to recall - (pwhysall) - (4)
                                 Yes but... - (folkert) - (3)
                                     Re: Yes but... - (pwhysall) - (1)
                                         We aren't experiencing... - (folkert)
                                     You are confusing two things: - (malraux)
                             And they're working on it - (malraux) - (3)
                                 Now that is... - (folkert) - (2)
                                     Re: Now that is... - (malraux) - (1)
                                         Damn straight - (crazy)

Ignore the man talking to his hand.
183 ms