Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Comments

top

Google Upgrades WebP To Challenge PNG Image Format

porneL Re:It's been a long time coming (249 comments)

The original pngquant was quite bad indeed (it did support alpha, but poorly). It had lots quality trade-offs for MS-DOS era machines.

The modern rewrite is much better in terms of quality and it's especially tuned for good alpha channel support.

more than 2 years ago
top

Google Upgrades WebP To Challenge PNG Image Format

porneL PNG8 is here (249 comments)

I'm working on it -- or rather squeezing every last drop of the existing format.

http://pngmini.com/vs-webp/

With good PNG8+alpha quantization you can get compression in the same league as WebP (although WebP is still better) and basically 100% browser support (it degrades well in IE6).

more than 2 years ago
top

French Government May Subsidize Music Downloads

porneL Why the middlemen? (187 comments)

Cut out the middlemen and give it directly to recording industry lobbyists.

more than 3 years ago
top

The Surprising Statistics Behind Flash and Apple

porneL Strawman massacre (630 comments)

Of course replacing Adobe lock-in with Apple lock-in would be dumb. HTML has 100% market share and CSS+JS are still ahead of Flash.

Jobs didn't block Flash on desktop, where Flash has high market share, so why quote that statistic? He refused to support it on mobile, where currently iOS has much higher market share than Flash.

more than 3 years ago
top

Opera For iPhone To Test Apple's Resolve

porneL Re:Well, Opera Mini isn't strictly a browser... (292 comments)

> Because the bank is (presumably) chartered in the country you live in and heavily regulated, and you have recourse if they screw something up.

Indeed, Opera won't get trillion dollar bonus if they screw something up ;)

Opera is publicly traded company regulated in civilised country. They're technologically very competent, which I can't say about my bank which has JavaScript-laden IE-optimized website in 640x480 popup window.

more than 4 years ago
top

Opera For iPhone To Test Apple's Resolve

porneL It does not violate SDK terms (292 comments)

It could be accepted.

Apple forbids code interpreters other than Apple's own, BUT this is Opera Mini, not full Opera Mobile. Mini executes JavaScript server-side and only sends rendered result to the phone. There's likely no (turing-complete) interpreter on iPhone side, so it should be fine within terms of SDK.

Apple has already accepted number of WebKit-based browsers, so browsers in general aren't forbidden.

And for iPhone users, especially on EDGE, there is very good reason to use Opera Mini: it's going to be faster. iPhones before 3GS are also very low on RAM, and Safari only uses RAM for caching. Presumably Opera Mini would be able to keep many more tabs open and fully cached.

more than 4 years ago
top

Mozilla's VP of Engineering On H.264

porneL Re:Sigh (675 comments)

It is patented, and in exactly the same way as h264 will form a toll both on the internet

All known Theora patents have royalty-free license. Only thing that is "exactly same way" here is risk of submarine patents.

more than 4 years ago
top

The Environmental Impact of PHP Compared To C++ On Facebook

porneL Re:PHP harder to test than C++ (752 comments)

> But how exactly do you go about doing unit tests of the front end of a web application?

Unit testing in PHP isn't different than in other languages. You split code into testable chunks and hammer them with PHPUnit.

> due to all the javascript stuff that lives on the browser these days.

How is that related to C++/PHP? And would you just run Facebook without unit tests? (good luck!)

Anyway, for JS there's Selenium and it can integrate with PHPUnit. UI testing is difficult, and browser-hosted tests are especially fragile and finicky, but that's not PHP's fault and C++ won't fix it.

more than 4 years ago
top

The Environmental Impact of PHP Compared To C++ On Facebook

porneL Re:Interpreted Languages... (752 comments)

> If there is so much PHP out there, why wouldn't/couldn't there be an efficient compiler

There is PHC and Roadsend.

However there are PHP-specific problems that make it harder than it should be.

PHP's "standard library" is heavily dependent on the interpreter, so you either lug it around and maintain its state, or rewrite 5000 methods.

And there's of course eval(), extract(), dynamic include/autoload and other magic that makes static analysis pretty hard or impossible.

more than 4 years ago
top

The Environmental Impact of PHP Compared To C++ On Facebook

porneL Re:PHP harder to test than C++ (752 comments)

Developers that are diligent enough to make only 1 memory-related bug/year can certainly spell variable names correctly.

If you have statically typed language, you rely on types. If you have dynamic, you rely on unit tests. Both are probably equally slow :)

more than 4 years ago
top

The Environmental Impact of PHP Compared To C++ On Facebook

porneL Re:PHP harder to test than C++ (752 comments)

This is not a problem in PHP.

If you have editor with auto-completion, misspellings are uncommon. Other kinds of errors are caught (and logged) as soon as faulty code is executed. With short edit-run cycle it's pretty quick.

It's not perfect, but OTOH C++ compiler won't tell you about all memory leaks, dangling pointers and buffer overflows at compile time.

C++ has runtime errors too, and you won't easily get logs with line numbers where your memory corruption happened.

more than 4 years ago
top

Opera 10 Benchmarked and Evaluated

porneL Bandwidth bill (277 comments)

They have 20 million Opera Mini users, 40 million desktop users, and very few desktop users will use Turbo.

more than 5 years ago
top

Audio Watermarks Could Pinpoint Film Pirates By Seat

porneL Previous step - DRM (336 comments)

That would be counter-productive and would drive away customers from an already troubled industry.

That argument never stopped RIAA and MPAA before.

more than 5 years ago
top

Google Releases Web Security Book

porneL Re:HTTP authentication (49 comments)

It has been discussed recently on HTML5 WG.

Browsers' UI for HTTP authentication so far is absolutely awful, and there's no standard mechanism for logging out.

Although HTTP Digest authentication does offer slighly better security than cookies, HTTP authentication is helpless against any MITM attacks.

There have been proposals to give HTML forms front-end for HTTP authentication, but they haven't gone anywhere, since there is little to gain (same UI as cookie-based auth, negligible security improvement) and backwards compatibility is poor.

more than 5 years ago
top

Smart Spam Filtering For Forums and Blogs?

porneL Yes, there's Sblam! (183 comments)

That's exactly what Sblam! does.

It's PHP-based filter for web forms that detects spam based on content (bayesian filter + specific rules), behavior and uses 3rd party blacklists.

It's absolutely transparent to the user (well, 99.8% of them).

more than 5 years ago
top

Hashing Email Addresses For Web Considered Harmful

porneL Bad news for Gravatar (155 comments)

I guess Gravatar.com will now have to ecourage proxying of avatars via sites' web servers.

about 6 years ago

Submissions

Journals

porneL has no journal entries.

Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>