Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment PostScript (Score 1) 429

What other language contains the beauty of both RPN style programming and the ability to draw a Bezier curve?

Great language... actually a lot more powerful print language than PDF (yes, I know PDF isn't a language you pedantic insensitive clod!)

Comment Govt. grants for % of the take.. (Score 1) 126

Unfortunately no one wants to invest in anything as we (as a society) have become too risk averse. I blame the lawyers and their cabal for this one. How do we get out of this? By providing a means to fund risk.

Goes something like this... you write up a business proposal for something you would like to do. It could be for an invention, basic, applied or theoretical research. The Gov't provides you with a research grant with a small string... they get a percentage of the take (or your income) for 10 years or until the original grant is paid back (whichever is first). You can still hold the patents and copyrights - the Gov't just gets their cut until they are paid back.

Maximum grant 100K / person / year. Max grants 3 years (they can be consecutive) out of 10. You cannot apply for a second block (3-years) of grants until the first one is paid back.
You can create an consortium to pool resources if you'd like.
For an invention - 25%. Applied - 20%, basic 15%, theoretical - 10%. Reward those with the greatest risk with the least 'take'

For example, take out 100K for an invention - you either pay back 25K over 10 years you pay back the whole 100K earlier to get you to 100% profits. If the things a winner - we get our money back faster. If it's a dud - well...

A billion dollars would fund 10,000 such endeavors! That's a lot of monkeys banging out Shakespeare and a heck of a lot better ROI than bailing out the banks.

All research, design, inventions, raw data, etc. must be openly published. You can own the copyright to the material and/or patents on the invention - but you have to publish it or make it available in some manner.
Must be a US Citizen of voting age to apply.

No requirements about degrees, education, etc. I've see a lot of farmers that knew more about building stuff than many engineers I've come across.
No limits regarding what you produce - except it cannot be illegal. Produce a film, write a book, invent a new firearm, electronic gadget or build a better mousetrap.

Going along with this - we need to clean house in the USPTO and get the Supreme Court to finally agree that continually extending copyright is the equivalent of making it in perpetuity.

Just a thought

Comment Re:COBOL (Score 1) 157

There are a few that are better than their predecessors....I'll posit SAS and Mathmatica / Wolfram as examples. Mathmatica on my R-Pi - yum.. a bit slow, but still great (Thanks Stephen!).

But, I would agree, that in general we have peaked at C and complexity has abounded due to K&R's 'I hate to type' mantra. Just about every popular language in the last 30 years has been 'C-like' - C, C++, C#, Java, Python, JavaScript, etc. Some are better than others, but all have a coding style that can be overly dense.

Comment Re:COBOL (Score 2) 157

You, sir, are confused as you know not of what you speak.

There is 'The Assembler', and 'Assembler'. The 'The' (definite article) in 'The Assembler' is the thing (program) that assembles Assembler (language) into object code. That is then merged with the linker to a run-time to become an executable. Modern Assembler languages, and by extension 'Their Assemblers', contain macro capabilities - very similar in nature to #include in C (and other such languages). But, back in the 50's, when COBOL was written, not much macro assembler being written.

Assembler is a language. It has a grammar and a syntax - unless you wish to program in object or straight machine code.

But don't believe me (I wouldn't) - look for yourself -

Comment Re:COBOL (Score 4, Insightful) 157

At the time you had... Fortran... and Assembler. COBOL was a godsend to the business community. Because of it companies actually invested in computer equipment to do things... that investment reduced the cost and increased its capabilities. Eventually allowing the creation of that smart phone in your pocket. If it wasn't for COBOL it is doubtful that companies would have made the investments.

Having programed in both COBOL and Fortran... I'll take COBOL for anything business related.

Yes, it's verbose. But, it was a product of it's time. And quite the amazing language if you know what you are doing with it.

Comment Low technology.... (Score 2) 108

A lot of folks have talked about a lot of different pros and cons with various solutions... I'll provide one other... the technological learning curve necessary to repair one. In that case - 8/9pin DMP is your best bet.

Ink Jet and Laser (which can have the lowest overall cost) - have much of the mechanism 'hidden' from inspection due to their nature. Also, Laser has a humidity issue to be worried about with the paper - too moist paper jams and toner doesn't stick (fuser ends up drying the paper rather than fuse the toner). To dry and the electrostatic mechanism has a hard time working. Thermal - with the heat you are going to fry your paper stock.

Similar to the 10,000 year clock, almost the entire working mechanism is open to inspection and analysis as to how it functions. With not much more than a #1 & #2 Philips screwdriver, 1/4" blade driver and a pair of pliers you can field strip the machine down to just about nothing. Get the dust, jams, monkey poo, whatever out of the unit, drop of sewing machine oil around the pins to free them up (if necessary) and get it back up and running in short order.

One of the manufacturers even had a ribbon that had a small felt inker built in. I just refilled the inker with off the shelf stamp pad ink and was back up in running with lovely, rich blacks.

The programming necessary is just so old-school as to not be funny... Almost all of them, OKI, Star Micronics, Epson, etc. all used Epson FX escape codes for everything... no brainer to add the codes to the program to do stuff like skip to top of form, set tabs, bold, underline, etc. And, almost all of them have UNICODE BMP 0000-00FF installed - allowing you to properly print in languages such as French - which is a sizable chunk of Africa.

I would stay away from the 24-pin units - why? The pins are so small they tend to tear up the ribbons.

As for your specimen printer -- pre-printed stick on labels that they write on with a Bic ballpoint pen (solvent ink, not water-based crap like Uniball). If you want it printed - I liked the suggestion of a hand-held Dymo labeler. I'd stay away from pTouch - they have this nasty habit of wanting to throw away a chunk of ribbon/tape every time you use it. Totally wasteful.

As for the post about all electronic or all paper - in a first-world country you make sense. In the third world - you are absolutely clueless. The work needs to be able to get done regardless of the current monsoon, dust-storm, or power disruption. They don't have the luxury of sending people home because the systems are down. You say that after they spent hours walking just to get to the clinic - you might just get a spear in your gut or a bullet in your head.

Comment Tools, Techniques, and solutions...- (Score 1) 238

If you want to go through a PDF a scrub out such things as JavaScript, actions, annotations, etc. I would implement either Enfocus' PitStop Server or Callas' pdfToolBox Server. They pay tools are not some sort of conspiracy. They have been tested in a large number of production environments with a zillion PDFs produced by various tools and systems. The vendors (Adobe included) have libraries (10's of thousands) of malformed PDFs that they use to regression test their products.

Do not refry (PDF--> PS --> PDF) the PDF unless you know what you are doing. It's not the PS --> PDF using Ghostscript that's the problem (ver 9 of GS actually produces a pretty decent PDF). It's the creation of the PS from the PDF feedstock. It is not as easy as you may think. Did you sit down with a loupe to see if you have the resulting PDF look EXACTLY as the input? Didn't think so. You can run into all sort of weird issues with fonts, color spaces, transparency, alternate content layers etc. by doing a blind refry. There are a lot of ways to create a PDF. There are relatively few ways to do it correctly. There are very few (read: only ONE!) PDF Reader that actually does a good job on the not so well-formed PDFs. That being Adobe Reader.

Tools that decompose the PDF and recompose it will be hit or miss.

With regards to installation of Reader in a corporate environment:
1) Use the latest/current version. Starting with Reader X (ten) Adobe launches PDFs in a sandboxed mode (until disabled by the user), negating much of the JS and other exploits that have been rampant previously. Starting with Acrobat XI (Spinal-Tap version - it goes to Eleven!), even Acrobat is launched in a sandboxed mode, again until disabled by the user.
2) Use the enterprise deployment tools that Adobe provides to make sure that a) Reader is locked down b) stays locked down according to your corporate needs. The tools provided can allow you to harden Reader quite a bit and keep the users from making changes.
3) If you are truly of the paranoid type - and there are some business areas that have a legitimate need to be hyper paranoid about this stuff - only allow the PDFs to be opened inside of a hardened virtual machine that you remote into. Sort of a glove box approach to the PDF. Others have mentioned various methods to do this which are perfectly acceptable.

Now, a larger number of slashdotter's are not going to like this - but much (most?) of the FOSS PDF software, tools, and libraries, produce less than optimal PDFs. The primary problem stems from 1) good page layout design is not the same as good web design. 2) Good PDF is built by using the most expedient and direct method possible. Not by using the most obscure methods you can find (such as how Apache FOP loves to f-around with the CTM rather than just performing a simple moveto). This is not RISC vs. CISC. Yes, f-ing around with the CTM allows you to slice, dice, Julian, fry, as well as being both a dessert topping and a floor polish. However, it is almost impossible to debug. You would have been better off just coding moveto, rmoveto, translate, scale, rotate, etc. as individual function calls (note, I am using the PostScript equivalents to the internal PDF commands). Your code is easier to parse, understand, debug, and, most importantly, follows generally industry concepts. 3) Use the minimal work to get the job done, not the most maximal. Don't screw around with kerning, leading, etc. unless you really need to. Place stings of characters as stings, not individual glyphs. 4) Learn the industry you are developing in and not gripe that the industry has no clue as to what they are doing. The typographic/layout industry has 10x the longevity as the web industry (500+ years vs. ~50). Most of the mistakes noobs were learnt years ago. Learn from their mistakes first. Yes, there are some things that are holdovers from times gone by (e.g. points as the unit of measurement), but most of the finesse of the industry comes from first and foremost from making information easy to convey. Remember, this stuff is for humans to read - not machines.

Are the FOSS tools getting better? Yes! But unfortunately most of the work is in adding features - not in producing the PDF correctly. It's PDF - it should just work! Clueless noobs.

Do I support Adobe? Yes - to some extent I do. I'm one of the experts out on and am an Adobe Community Professional. I've worked with them internally as quite the critic on how their tools work. Especially in the enterprise deployment and security space. I've been a Alpha/Beta tester on Acrobat since v.5. Been there - done that.

Comment Math maths mathmagic (Score 1) 656

What do you need vs. what do you use?

What I use...
Linear Algebra - I do a lot of work in the print/PDF industry. Matrix transformations being the primary one to convert coordinate systems.
Number Theory - To understand cryptography, data compress, encode-decode, etc. - it's really hard to do any of this without Number Theory.
Discrete and Combinatorial math - As strange as it sounds, knowing how to properly count and manipulate integers is the heart and foundation of what a computer does.
Graph Theory - For flowcharts (yes, a good developer should still sketch overall design, logic flow, data flow, etc.), logic, state-tables, and programming data structures (including object inheritance).
Regular Algebra I & II - used all the time... Solve for X?
Both Algebra (discrete) and Calculus (continuous) based course in statistics.. or as we would call it sadistics.
I had Calc I, II, & III. Do I use any of it? NO - but I'm not a Quaint. But it's been helpful to make better sense of the maths I *do* use.

In short - don't select the courses based on what you will *need* - but on what will help you solve problems, be functional, productive, and give you the tools to teach yourself what you don't know when you need it. It's just like all the CS class you take - a zillion languages, data structures, networking, databases, etc. Because of that background I've been able to teach myself Python, JavaScript and a few other languages - that didn't even exist when I was in school.

CS is like woodworking (which I do as well). A lot of folks can use a table saw, router, planer, etc. to make a nice piece of case goods. But if that's all you know how to use that's what you will be limited to doing. The truly skilled folks can use those tools, a hand saw, along with a cabinet scraper (level a finish), chisels, carving tools and a Stanley Combination plane. They don't use them or need them all that often. Sometimes it's years apart - but when they do they are sure glad to have that tool in their toolbox.

When a new project comes along, would you rather be the one that can say 'Sure, I can take that on.' or the one that says - 'Go ahead and outsource that to a contractor.' Maybe you are the contractor - Yea, I can do it! - or no, have to pass on that gig - maths are too complex.

I don't remember much of my Calculus - but I know it's there. And, if I ever need it I can go out to the Wikipedia page and bone up on the part's that I forgot. And if I never need it - I still feel that I am a better person having learnt it at one time.

Finally - for all of you that said 'oh, you'll never need that because library 'x' handles it for you.' Someone had to write library X. I'm not saying that everyone needs to start from square one and invent the wheel, fire, and the lever. But you should at least know how the wheel, fire, and the lever work when you use it. Lest you start to use a screwdriver for a chisel.

Good luck.

Comment Re:Specialization - sure. Major - maybe. (Score 1) 220

But not everyone wants it cheap or fast. There is a LARGE segment of the IT industry that are willing to pay for just WORKING. Financial accounting systems (where you store your numbers in BCD to avoid rounding errors - where off by a penny is one penny too far off), military / aerospace, etc.

My first real-world gig was in the financial space and we used waterfall - as this was the mid-90's - that's what you used. The closest I had to 'testing' in college was coming up with crocked data to make sure my program ran. Not how it would fail.

Programming is to Engineering as Testing is to Underwriters Laboratories. Programmers build it and make it compile/run. Testers try to break it - not just once, but in every conceivable manner. Then hand the mangled up piece of code back to the programmers and say, "I should have not broken this so easily. Let's try again, this time with feeling."

Unfortunately the AC, among others, is right - too many markedroids and suits wanting everything yesterday.

Comment Don't care... (Score 5, Interesting) 182

If The Verge, Slashdot, Wired or, heck, Gizmag want to write about the explosion - it is their 1st Amendment right to do so. Same goes for the National Enquirer, STAR, or any of the other tabloid journals. This isn't any different than WSJ, NYT, Boston Globe, Chicago Tribune, LA Times, Al Jazeera, etc. can write about tech items, happiness, tragedy, cat getting stuck in a tree or anything else considered newsworthy.

Each outlet will be judged by how well they do their job, and will receive an appropriate reputation.

Since our news organizations are a combination of subscriber and advertiser revenue based, they have to write according to their generating said revenue.

We can either just deal with the situation as it stands or have state-run news organizations. I really don't think anyone would be comfortable with the latter as even approaching truthfulness or integrity in the long term.

If the 'Big Boys' don't like the upstarts encroaching on their turf - all I can say is.. too bad.

Comment More than just the language de jour.. (Score 4, Interesting) 630

The professors at the university I went to specifically told us that they were not there to teach us how to program in a particular language. But to give us the fundamentals to program in any language that we needed to. If you need to program in x, go buy a book on x and learn the language. And, to make that point, we were thrown at Pascal (all the data structures classes), ADA, C (networking, operating systems), C++ (OOP) , COBOL, databases, a couple flavors of assembler, file systems (I can still do block calculations) computers and law, and, to top things off, PostScript. I also was able to pick up a minor in mathematics, classes on Russian history, Western Civ., communications, economics, physics, chemistry and all that other 'crap' that is to make you a well rounded egghead. Because of that expanded world-view, I can actually work with my counterparts in India and treat them like human beings. (For everyone that is bemoaning the fact that jobs are going over there - don't blame the Indians - they want the same thing for their families as you do - food on the table, roof over their head, clothes on there back and a better life for their children. Blame your local politicians and business leaders).

Because of the way they designed the CS environment, and how they approached the material, I was able to build stuff that ran circles around the 'self taught' folks. Sure, we can build a linked list and tree in COBOL 85 to do fast data lookups (COBOL didn't support pointers in that release, but it has this really good array system). I understand the multiple tree structures inside of a PDF - and how the file actually organized as it is written to disk.

I have a CS degree.. I work in IT... and to be honest, I rarely use the programming skills to actually program - most of what I did was in PostScript when I did program. But, I've also had to learn Python, JavaScript, Visual Basic, 370 Assembler, JCL, and SAS when the need arose. Lately what I've needed to do is advise other folks on good practices vs. bad. Talk to the engineering departments at my vendors how their systems work (or don't) .. sometimes with an uncanny insight into how their systems were actually programmed (I'll bet Bob wrote this at 3AM) hopefully with some great ideas on how to make their better. I can translate business rules into software rules (four years coding pension plans) and generally understand why business operates the way they do. Finally, I made some great friends there. The kind of friends that are still friends 20 years later.

Yea, at least for me, the CS degree was worth it.

Comment It's already a year long... (Score 1) 729

The school year is already a year long - how do you increase the length of a year?

OK - snarky remark aside.

I don't think the answer is increasing the length of time children spend in school in the current form. There are way too many institutional hurdles that will need to be overcome.
The broad and vast set of industries that are dependent upon children being off - from tourism to agriculture.
Enrichment that can occur during the summer - commonly known as summer camps (Scout, language, baseball, etc.). And, family vacations - there is enrichment in an Griswold's style road trip.
The demarcation between one grade and the next that psychology occurs during the summer time off. If you run year round, when does the next year start?
If summer learning is so important why do most (all?) colleges and universities have the summer off? The only students I ever saw at university over the summer were either - trying to get ahead or were behind and trying to catch up. The professors wanted their time off as well.

What I would rather see, than more rote STEM+Reading / Writing during the summer - is maybe a series of 1-2 week mini-camps that are organized by the local school districts (and, yes paid for out of tax dollars) for students to attend. If there are 12 weeks off, the students must attend 6-7-8 (somewhere between 50 and 75%) of their choice. Each session is part summer camp (you get outside to do kickball) but also is focused on a specific subject matter. Gives the families time to do family things. Gives the kids time to do kid things. That is still important.

Suggested topics:
Model rocketry - and all the science camps that can go with it.
Foreign language - French, Spanish, Mandarin, etc.
Performing arts - you can do a 1-act play in 2 weeks - who says you need sets?
Craft arts - pottery, painting, etc.

How to structure one - each session has some sort of reading, writing (journals count), social studies component. The more 'engineering' ones would integrate age appropriate math, science, tech, etc. into them. Add in some field trips, edumakational films, discussion groups, labs, etc. and you've greatly enriched the learning environment along with kept the giant summer brain leech at bay. Something I think everyone agrees need to be dealt with

Yes, these would be graded - and the grades would count on your transcript.

Slashdot Top Deals

"The eleventh commandment was `Thou Shalt Compute' or `Thou Shalt Not Compute' -- I forget which." -- Epigrams in Programming, ACM SIGPLAN Sept. 1982