...has written a two-part essay exploring why there is no pipeline of self-taught female engineers entering the tech industry via Open Source or other individual efforts. In The Hidden Engineering Gap, she asks why there are so many self-taught male software engineers in startups, but no similar pool of women. In A Modest Proposal, she discusses a potential short-term fix to the problem: a one-year, co-op, certificate-granting program for women set up and sponsored by Silicon Valley companies."
Er. I think there must be something to that Mars and Venus thing, because on my planet, terms like "self-taught" and "individual" are near antonyms with "certificate-granting program, set up and sponsored by" and "co-op".
Re:Genuine question about perl vs ruby
on
Lisp and Ruby
·
· Score: 1
...speed, when you notice that you're losing it, is important.
Take a look at something like LuaJIT. It can be quite a bit faster than Perl.
People seemed to be getting worked up about the NSA keeping records of which number they've dialed. Let's do a little math and see how many conversations we could record in a year for a paltry $10 million. Your cellphone uses a digital vo-coder that operates at 8kbits/sec. That's 1k bytes/sec. Over on newegg they've got a 300GB Seagate hard drive selling for $99. So $10 million buys you 100,000 drives or 30 petabytes (30E15) of storage. At 1k byte/sec, you'll be able to record 30E12 seconds or 5E11 minutes of conversation. The average phone call lasts somewhere around 6 minutes. So we could record about 83E9 conversations. There are about 300E6 people in the U.S., so 83E9 conversations is 270 6-minute phone calls for every man, woman, and child in the country. I'd be surprised to find out that my calls haven't been permanently recorded for many years now.
Well, its more for analog circuitry, but take a look at the Maxim quickchips...
A QuickChip uses an uncommitted array of strategically placed devices that you can quickly interconnect to meet application requirements (similar to gate arrays for digital designs). Because there are fewer masks to customize, QuickChip arrays are easier to use, less expensive, and less time consuming than full custom design.
Perl itself is slow....
I keep seeing statements like this, and I wonder what they mean.
That means for tasks that are computation intensive, Perl is something like 100 times slower than a natively compiled language like C. Now if your project is mostly I/O bound, then it might not really matter how fast your language is, since you spend most of the time waiting for disk or user input.
Perl is a script language that is compiled on the fly, before processing starts: there is no Perl interpreter. My understanding is that the resulting code runs at the same speed as an executable from a C compiler: that it is in fact an executable from a specialized C compiler.
Wrong. Perl compiles a script's source into a parse-tree to which optimizations are applied and finally an interpreter walks this parse tree. See chaper 18 of Programming Perl.
So, I'm curious, how did your whole stack corruption problem turn out? Did you find any tools that helped you out? Why not write up a journal entry about your experiences?
Also, something I've never tried, but always been interested in is CCured...
CCured is a source-to-source translator for C. It analyzes the C program to determine the smallest number of run-time checks that must be inserted in the program to prevent all memory safety violations. The resulting program is memory safe, meaning that it will stop rather than overrun a buffer or scribble over memory that it shouldn't touch. Many programs can be made memory-safe this way while losing only 10-60% run-time performance (the performance cost is smaller for cleaner programs, and can be improved further by holding CCured's hand on the parts of the program that it does not understand by itself). Using CCured we have found bugs that Purify misses with an order of magnitude smaller run-time cost.
If I had to guess, I'd say most likely his problem is caused by fence-post type errors in dynamically allocated arrays (malloc and friends). But on the off chance he's got problems with buffer overruns caused by user input (gets, etc.) there's also stack protectors like ProPolice in addition to libsafe.
Actually, the Hurd was moving to the L4 kernel. But from what I understand (which isn't much) the team working on L4 has changed emphasis and started working on a new incompatible version called L4sec. So the L4/Hurd team could either fork the current version of L4 (and maintain something that others had lost interest in) or they could port it over to L4sec. But changing to another microkernel means you might as well look around and see what else is available, hence Coyotos.
This is (I think) the same kernel used by EROS/Coyotos but I'm not positive.
It's quite obvious that if software patents go on much further, you won't be able to do much else then printf("Hello world") without potentially infringing.
Nice try, but I'm here to inform you that you happen to be infringing on my Patent #271828182 "Printf without the terminating semicolon". As anyone can see, this is a great productivity booster for programmers. For that statement alone, you saved 5% of the keystrokes normally required. That's 5% less code to debug and maintain. Not to mention the cost savings on disk storage, network bandwidth, keyboard replacement, medical bills related to carpel tunnel syndrome, etc. Being the saint that I am, I'm licensing the patent on reasonable and nondiscriminatory terms, see the rate chart below...
< 10 printf semicolons omitted: $0.01 per semicolon
11-100 printf semicolons omitted: $0.005 per semicolon
101-1k printf semicolons omitted: $0.001 per semicolon
1k-10k printf semicolons omitted: $0.0005 per semicolon
10k-100k printf semicolons omitted: $0.0001 per semicolon
>100k printf semicolons omitted: $0.00005 per semicolon
One practical reason why software is not warrantied like hardware products is that no one entity is wholly responsible for the design and maintenance of the total computing system.
Yeah, and General Motors makes their own bolts, and smelts their own iron ore, which they mine from land they own. Using dynamite manufactured by GM. Oh, and the paper wrapper on said dynamite? You guessed it, made from trees grow in GM's forests. The trees were harvested by chainsaws (of GM manufacture, of course) running on gasoline refined at...
The number 60 has these low factors: 2 3 4 5 6. That means that if you use the number 60 for measuring, it's easy to divide whatever you're doing into 2 to 6 parts, and each part is another integer. The number 10 only has factors 2 and 5. Arguably, the number 12 (having factors of 2 3 4 6) is more useful than 10. 10's usefulness is that it matches the base (10) that we use... but only having 2 factors makes it insufficient for other uses.
Yeah, what we need to do is convert to factorial time;-)
While I haven't been able to take a look at the Rosetta Stone project, it seems like it might be similar in spirit to the Code Codex.
That's not so insane.
Here's the gif.
People seemed to be getting worked up about the NSA keeping records of which number they've dialed. Let's do a little math and see how many conversations we could record in a year for a paltry $10 million. Your cellphone uses a digital vo-coder that operates at 8kbits/sec. That's 1k bytes/sec. Over on newegg they've got a 300GB Seagate hard drive selling for $99. So $10 million buys you 100,000 drives or 30 petabytes (30E15) of storage. At 1k byte/sec, you'll be able to record 30E12 seconds or 5E11 minutes of conversation. The average phone call lasts somewhere around 6 minutes. So we could record about 83E9 conversations. There are about 300E6 people in the U.S., so 83E9 conversations is 270 6-minute phone calls for every man, woman, and child in the country. I'd be surprised to find out that my calls haven't been permanently recorded for many years now.
Ratpoison.
So, I'm curious, how did your whole stack corruption problem turn out? Did you find any tools that helped you out? Why not write up a journal entry about your experiences?
If I had to guess, I'd say most likely his problem is caused by fence-post type errors in dynamically allocated arrays (malloc and friends). But on the off chance he's got problems with buffer overruns caused by user input (gets, etc.) there's also stack protectors like ProPolice in addition to libsafe.
Also, you can use the Boehm garbage collector as a leak detector.
See Electric Fence and your documentation for debugging malloc.
I have noticed the same thing also and wonder if it is related to "Bugzilla Bug 246974: CPU usage reaches 99% and will not go down".
Hey, maybe this will get more people interested in the Hurd, since they appear pondering a change to a EROS/Coyotos microkernel thingy.