Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×

Comment Re:Numbers don't lie (Score 1) 349

That's a pretty bad metric. Defects found is most certainly not the same as defects existing, or we wouldn't have the security situation we have today.

To make matters worse the more code there is, more defects there is going to be, so it again boils down to design. http://amartester.blogspot.fi/2007/04/bugs-per-lines-of-code.html

To make matters even worse, many vendors refuse to admit any issues, i know several such vendors, and more important it is, the worse they are admitting and fixing those issues. The worst crap i've seen is eCommerce applications, and the worst pieces of code i've seen is in the payment gateways and handling of money/transactions.

It's funny how it's inverse relationship with required quality to defects, more serious it is, more defects there is going to be.

For example, WHMCS considers 1EUR = 1GBP = 1USD = 1AUD for the most part! They fixed some of the issues after i reported WITH solutions (tho they did not give credit for it), but those i reported without solutions they simply swept under the rug.
I even found a severe exploit which could gain free services for the attacker on very specific circumstances. I also did find a DOS exploit in the system, requiring 0 resources from the attacker to make it happen.

Comment Re:Numbers don't lie (Score 1) 349

The system also includes the people using it. A piece of software can be of excellent quality and have nearly zero defects in it when run against the environment it was designed for, but it is hardly a rare scenario where the very same program is then run against something completely different.

Exactly, developers testing it rarely no problems arise but as soon as the system is demo'd in a new system with new users a lot of problems are bound to arise due to differing usage patterns and installation on a fresh new system.

Comment Re:Numbers don't lie (Score 1) 349

No amount of QC will make bad coders produce quality code. Absolutely none.

For example, the Indian development philosophy is no testing what-so-ever, other people test. Resulting in very bad kludges as the developer itself hasn't bothered to check if the code actually works. Continuous testing is the pre-requisite for quality code. And no, i do not mean unit tests, but manually, during development testing, if at all possible.

Defects found is far from perfect measure, infact, it does not actually test for code design quality at all, simply the line-level quality.
Design in a big system is EVERYTHING, and i do not mean "ABSTRACT EVERYTHING", but keeping it simple, not abstracting 1-2 line things, but logic which is to be repeated. It all boils down to spotting and understanding repeating patterns, building short (sub 100 line) methods, in a structurized manner, human readable and understandable (so instead of prtcsh($data,gcnf('sirs')) do somethings like reports::print::calculationSheet($thisSheetData, $thisReportStyle))

Some good rules are also keeping intends at maximum of 4 levels (linux kernel rule by Linus Torvald's), camelCasing variables & methods, not shortening any variable or method names but typing them in full, realising coding is atleast 4 times more reading than typing, keeping it all human readable (humans do coding, not computers!), and intending correctly and in right places with the right formatting, ie. all if clause contents should be intended, some for switch case clauses, method contents should be intended (except in very few cases 1-2 first lines MIGHT be unintended when those have somekind of global influence, ie. sometimes fetching registry objects but not always, as those could be considered defining that method), first load all your data into variables then after empty line do the business logic so -> do not mix & match control & logic.
Do separation layers as needed on codebase global basis.

Comment Re:Numbers don't lie (Score 2) 349

The bottomline is that there is a tool best fitting for every task, there is no magic bullet.
Even quick'n'dirty code is the perfect choice for some things, things that do just one thing, like a database backup which needs more than a mysqldump cronjob (ie. send e-mail notification if backup failed)

Too often programmers fail for wanting to make things too fancy, forgetting the golden rule of code: Keep It Simple, Stupid!

For example, Zend Framework used to be quite great couple years back, but already suffering from the Coder's God Complex, things needing to be too fancy, a simple redirect doing 13+ method class to different classes. However, mainly it was still fairly simple and easy to work with. Today? It's insane complexity even for the most basic tasks, and basicly ruined completely. Magento is the culmination of this Coder's God Complex problem. (Weeks to just template the thing for all which is not exactly the same layout just colors changed!)

Then there is the other kind of problem: Absolutely no thought given to the task at hand, and a big complex system done completely Quick'n'Dirty, like WHMCS, osCommerce.

WHMCS is the worst piece of crap i've seen, they seriously thought that 1 EUR = 1 AUD = 1 GBP. WTF?!
They still point towards mysql result arrays by *NUMBERS*, not utilizing the column names like they should.
It's mostly function based code, no classes, no abstractions, no structure.
It even have serious security flaws due to these, for example mass invoice payment works by giving the customer credit then marking all the mass invoice payment invoices paid, which results in many automated systems that the customer gets free services, as auto-suspending doesn't work anymore and services looks like paid.
Hell, if you enabled multi-currency you can't even sanely go back at all anymore! You need to build a big conversion script and verify everything manually.
Also, by default TAX reports are done invoice based not transaction based like they should, and amounts checked from invoice. So you end up with completely wrong tax reports.
Infact, all the reports are screwed up by default, every single one of them concerning money are too badly flawed to be useable.

Also, there is e-mail bomb security flaw in WHMCS, allowing a nefarious attacker, especially if smart one, to DoS attack your system with spending 0 of their own resources and completely untraceable (we had an attack like this).

I've reported tens upon tens of these bugs to WHMCS, and they simply delete the threads claiming there is no such bugs even tho repros have been provided, only if i provide workarounds/solutions they will not delete them immediately. Some of my fixes did flow back into future releases tho (without credit).

Nevermind the huge usability issues, i do specialize in UX and tend to notice usability issues very easily.

The most worrying part tho? Some vendors simply refuse to admit any issues exist, and simply ignore you, for example i found potential critical security flaws in Bit-Pay WHMCS payment gateway module, Bit-Pay never bothered to even reply to my concerns, even tho i showed the particular issues with the module. That particular module had the worst crap i've seen in many years tbh, just a glance over the code showed severe code QA issues, and altho i did not test, i'm fairly confident there is a exploit there due to incorrect handling of payment verification. I even refactored and fixed some checkup code before giving up as it being too far off

Comment Re:No. (Score 1) 331

not just for joe averages, even for some power users who need the giant storage but also the speed.

In the past i've solved this by RAIDing multiple magnetic drives, but now i got couple 128Gb Kingstons sitting on my table for next upgrade of my workstation, going to through out the 6 magnetic drives and replace them with 2xSSD + 2x2Tb WD blacks. or maybe 4x2Tb WD Blacks.

2x128Gb on RAID0 is still a bit smallish for me, but i'm going to try it out (virtual machines for development) if i can survive with just that amount of fast storage. then again, 2x2Tb WD Blacks ain't exactly slow neither.

Comment Re:bcache (Score 2) 331

Mac OSX is basicly highly modified FreeBSD/NetBSD, so it might actually already have ZFS support, therefore L2ARC.
Knowing apple tho they have probably disabled it and gives you no means to even try using ZFS.
Besides that they've probably locked down SSD support to few select drives as well.

Linux does not by default have these options but several are available. I bet some vendors do include these supports.
For ZFS you don't need kernel mods in many distros.

Comment Re:bcache (Score 4, Informative) 331

USB latency is actually rather high. Infact, rather VERY high.

Absolute minimum latency for a fetch is 16ms on USB port. It seems this has had some work on it, now being 125Hz rate by default, instead of 90.
But still 8ms for sending request for file, device gets it, let's assume it's ultra fast and takes just 3ms to find, fetch and prep reply packet (and assuming fits on 1 packet), it means 16ms has been spent BEFORE the data can be sent back, 24ms for the whole round trip.

HDDs seek faster than this, SO if your HDD is not having other activity, for single fetch your HDD is faster. Unless it's Caviar Green.

Comment Re:bcache (Score 1) 331

last time i checked bcache was during last winter, and it was FAR FAR ready from serious production.
Maybe the situation has improved now, but back then it was deemed too experimental for our usage.
Also because it requires custom kernel it's not a choice for us in production as we operate so many servers a server setup routine time increase of 30mins is just too much most of the time.

Might take a new look into it tho :)

Comment Re:Hey, just market bugs as (Score 0) 705

maybe you ought to do a little bit of research first.
We have easily to feed to whole world 10 times over if everyone was vegan (no animal products whatsoever) or even vegetarian.

Livestock takes tons more space and uses tons more resources than plants.

Infact, you are so wrong it's ridiculous.

Comment Re:Hey, just market bugs as (Score 2, Insightful) 705

here in Finland meat prices have increased a lot faster than other foods. Eating meat is kind of expensive now.
Not only that, we had a big shortage of pork and pork based products this summer ... there simply wasn't enough :(

Eating vegan (or vegetarian) is actually very cheap. Soy, rice + seasoning, and you got yourself a decent tasting meal which costs next to nothing.
Yea, i used i to eat mostly vegan for years.

Comment Re:The Answer for $5M (Score 1) 532

To continue in that way of thinking, consciousness could be thought of as our operating system while as the brain is the CPU, RAM, Drivers etc.

If that's the way of thinking then it becomes clear how brain affects our mental capabilities, even if our operating system could be easily capable of greater things but processing speed and RAM is too limited to handle certain things.

Then where is this O/S stored in? Is it in brain as well, and it is inherited from our parents? That is the mainstream science, but what if that O/S is something in religion described as "Soul"? Where does this "Soul" exist then? How could we interact directly with it?

If we figure out the O/S and data storage (our memory, learned abilities etc.) portion, then we can achieve great things. But first we need to isolate and distinguis the O/S, or consciousness, can we be certain it resides in brains as well, and brain damage also damages our consciousness directly?
No we cannot prove that at this point of time.

Comment Re:Good haul for a scam! (Score 1) 532

Theology might not be true science, and mostly fairy tales, but those are REALLY old, when you start reading those writings between the lines, and thinking what they might have meant really as they had no better ways to describe things.

Sure, it's a odd joining of fields, probably will not bring anything tangible, BUT still needs to be looked upon. Who knows, they might find some similarities between all the religions and with the help of philosophy they might be able to derive something physical sciences needs to take a look into. Maybe a new perspective or a new idea.

I'm an atheist and think believing in gods is simply dumb, yet i find religions to be potentially a fictionalized record of historical events some of the time - those people didn't just have better ways to describe things than god(s) and supernatural things. Also religions do tend to teach you moral values - whether right or wrong, those at least were right in the eyes of the people of the time.
Just because religious people choose to believe in things which are not that sane, and many religious people are outright borderline insane (and some are insane) does not mean those religions are complete bullshit.

Btw, there is research into a "religious" area of the brain, stimulation of that area will cause you to have a religious experience, and in extreme cases make you religious nutjob the like of cult leaders leading to mass suicides or murder. Yes i tend to think that being religious is a mental illness.
However, that does not negate the fact that the world religions are FULL of amazing things, such as aerodynamically correct shape of aeroplane (even tested to be valid http://en.wikipedia.org/wiki/Saqqara_Bird ), mega monolithic structures ( http://en.wikipedia.org/wiki/List_of_largest_monoliths_in_the_world ) which we still couldn't build todate, structures in extremely precise shapes forming constellation/star position charts which has been impossible to see at the time of construction, texts with descriptions of flying things (planes, rockets) and even nuclear reactor is being described in bible. Anunnaki literally translates to something like "those who from the stars came" or something like that (wikipedia refers to loose translation and does not even meantion the literal translation, which is usual for wikipedia which is full of errors & popular myths spread as fact even when evidence is shown, http://en.wikipedia.org/wiki/Anunnaki )
Some people even believe the flood for which Noah's ark was built actually happened but was not a world wide flood, just a region.

Bottomline is religions have interesting stories, when you don't take them as exactly as written, but think about what they might have meant. Magic does not exist, and advanced enough technology is indistinguishable from magic, therefore ancient people might have easily confused someone with very advanced technology for the time to be a god. Whether that advanced theology were just a zippo lighter, or knowledge of gun powder, mathematics or something. Hell, they've found even really ancient batteries, who knows if someone figured how to make a light bulb even!
Whether fictitious or not, those are some interesting stories.

Don't you want to take the off chance that there actually is some viable information in the religions of the world? What if the "soul" is actually real, and they come up with a clue for physicists to look for it? Wouldn't you like to know about it?
Even if we could "upload our brain" to a supercomputer, but if there is some other, say quantum level, thing about consciousness wouldn't you like to know that?
What if the "soul" as described in bible is a quantum level effect which makes humans greater than it's sum of parts? If it is so, and we just try to make a copy to a computer are you really still alive, or is a mere inferior copy of you alive? Can you inhabit two bodies at once (human flesh & blood, and computer what-ever-material of the day)?
If the "soul" is some kind of energy which binds to very specific quantum "signature" (a collection of quantum effects happening in immediate vicinity, ie within our body), then what?
What if the "soul" is something in another dimension and our bodies are mere vehicles for that "soul" to interact in our "level of existence"?

These are all questions we need to think about if we want to make such things as teleportation (where you don't move the human body, but kind of copy to far away, ie. transmit as information) reality, these questions will need to be answered OR i know i will not be stepping into that kind of machine out of the even 0.000001% chance something is lost in transport if i have a choice in the matter.

Slashdot Top Deals

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...