Follow Slashdot stories on Twitter


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 Re:faster bookmarks (Score 1) 191

Here is the thing that always got to me about that and I have yet to receive any kind of logical answer for it...why? Why would you WANT 500+ tabs open at the same damned time anyway? I mean I can see a half a dozen, hell maybe even a dozen if you are researching something, but 500? Why would you even do that?

As a heavy browser, I keep many tabs open for a few reasons...

It may be weird for some people who don't think the same way I do, but it has always been much more efficient for me to keep hundreds of tabs open because I can keep my entire trains of thought on many topics in multiple tab stacks. That way I can forget about some topic for a few hours while looking at something else, and then switch back to the exact place I left off so I can get right back to my previous train of though.

I multitask in the stuff I am working on, the stuff I am researching, and the stuff I read for entertainment, and since I switch between these things at a moments notice, it is far quicker to just click the stack I want, or, since [Ctrl] + [Tab] is FIFO, cascade between many different things very quickly using that.

That's just me though, you browse differently obviously, and there's nothing wrong with that.

Comment Re:Emulators aren't very satisfying on my Nexus 7 (Score 1) 106

This is one of the reasons I kept my old Samsung Galaxy Spica... It has a D-Pad and relatively well-placed buttons. This means that emulators are actually pretty usable. For example, I've managed to complete Metroid: Fusion and Metroid: Zero Mission, which is something I am nearly positive that I could not do on a touchscreen-only phone.

Comment Re:Poor Opera (Score 5, Insightful) 135

I use Opera.

I don't use it for it's rendering engine, but rather for all of the functionality it has by default that other browsers simply cannot do. (Even with extensions.) So, the fact that it is becoming more compatible with most websites is great news for me. It means they can continue to innovate like they have done for years. (Most modern browsers use things that were created by Opera ages ago.)

They are not becoming Google's bitch because rendering was never their main feature, they are simply adopting the engine that everyone develops for while retaining the functionality that Opera users actually use. Sure, some of us will decry the switch because Presto was one helluva light engine and we lose the work done on it, but other then that, this is actually good news.

Comment Re:So... why use Opera? (Score 1) 314

Well, it's really preference in the end. I've always found Firebug and Web Developer a bit clunky. Especially how they handle JavaScript. In Opera, we get a fancy schmancy pretty-print beautified version of code (Togglable) to make weird formatting readable. Every variable that is initialized can be inspected by hovering over them with the mouse.

This is debugging a mouseover event in minified jQuery.
As you can see, it's a lot easier to work with. I just hovered the mouse over elements to inspect them, and clicked on the HTMLDivElement to select it on the page. While not an ideal situation, it certainly is made easier because of Dragonfly.

One thing I like about Firebug that Dragonfly handles in a weird way is breaking on AJAX requests. But that's about my only complaint.

But that's just me. Different strokes for different folks.

and the Web Developer toolbar allows quick highlighting of block elements like you were mentioning. Not to mention quick cache disable, js, all image sizes and paths on the page, and quick user agent access.

Yeah... Dragonfly doesn't have disabling JavaScript and the sort because it's an option built into the browser already, so it would be redundant. I access them all through a my sidebar (Show/hide it with [F4]) and custom shortcuts, so it's all usually really fast.

I guess I might just be used to right click + Q to inspect instead of navigating a menu ...

You don't need to navigate a menu to inspect elements... That would be really tedious to use.
If you are on the Document tab in Dragonfly, you just need to click an element on the page to select it. No need to navigate DOM structure to pick something up.

Also, if you are in another tab, [Right Click] -> [I] does the same thing as [Right Click] -> [Q] does for you.

Comment Re:So... why use Opera? (Score 1) 314

Yeah... It's a pretty old feature. But Opera was the one that created it.

This happens really often actually. For example, even right now Firefox is currently trying to integrate another Opera feature in its recent releases too. It's not fully functional, but try [RIght Click] + [Mousewheel Up] in the newest Firefox to switch tabs... (Down is broken)

Comment Re:So... why use Opera? (Score 1) 314

Not quite.

In style of all the other features they copied, Firefox and Chrome both do this now... Both for address and keywords.
But Opera's keyword search is better because it can handle POST requests whereas Firefox's and Chrome's cannot. So you cannot keyword Google Translate (Or similar services) with excessively long strings. Also, many searches are exclusively POST-based.

I honestly use [Ctrl] + [L] more often than any other key combination because I have so many keywords. (Notice the scrollbar? That list has grown since then too.)

I usually set my default address bar search to Google's "I'm feeling lucky" because it usually goes to the right website without ever needing to see a results page. (Keyword address is "" if you want it.)

It even goes to Google search if things are too ambiguous.

The only downside are some automagic suggestions, they won't show up unless you specify the default Google search keyword yourself. (In my case, "g".)

Comment Re:So... why use Opera? (Score 5, Informative) 314

I use Opera because it both has the best usage paradigm for me and integrates with pretty much everything I need to do online.

It takes far less time for me to do anything in Opera than it would in another browser. There are extensions for some Opera features in other browsers, like Mouse Gestures, user scripts, and user CSS. But they all lack capabilities that Opera's native version has. There are also no extensions for some Opera features like Tab stacking, or mass-refreshing, pinning, or deleting tabs and windows. (Complete with incremental tab search.) The website-independent settings settings are also awesome, I've used them to make my Slashdot hot pink for example. :)

Also, If I don't like Opera's interface... I can build it.

It has shortcuts for everything too, and if it doesn't, you can make them. One in particular I use is Mousewheel tab switching. Firefox has partial mousewheel tab-switching in it's current incarnations, but it only works with [Right Click] + [Mousewheel down].

Also I've seen mouse gesture extensions for other browsers, (The best extension is All-in-one gestures for Firefox since it also integrates Rocker Navigation.) but they don't encompass the entire browser and only web pages. So I can't use mouse gestures to close or navigate a settings menu for example.

It's sidebar is also really useful. I use it for things like controlling VLC, or E-Mail and RSS and Usenet, or looking at Opera's CPU usage, or contact management with incremental search an everything (No screenshot for this one because too much personal information), or controlling Transmission (Torrent program), or interacting with notes, or quickly turning on/off my proxies or masking my user agent, or managing my tabs and windows, or

Also, as a web developer... Opera has a lot of spiffy development features that lack in other browsers. Dragonfly has more capabilities than the Webkit inspector, for example it can inspect attached events in DOM nodes. There are also view modes built in that allow you to highlight element borders for debugging CSS or see DOM attributes inline. Autoreferesh is also good for debugging CSS and for repeating YouTube videos. :)

I glazed over most of it's features, and it's still many magnitudes more functional than other browsers.

How many extensions do you think I use to get this functionality? The correct answer is zero. And the browser takes up less space than either Firefox or Chrome when installed.

Is this a good enough reason to use Opera?

Comment Re:Aprils Fools? (Score 1) 387

So what, pray tell, is Lispy about JavaScript? You talk about anonymous functions and lambdas again, but, as I have already noted, almost all other mainstream languages have both, as well - most certainly both Python and Ruby do.

Other then the fact that lambdas and closures (I'm sure that's what you meant) exist, here are a few:

- It is object oriented at a fundamental level, but not in a specialized sense, so nested functions are the basis of functionality, and not object methods and/or functions with data around it. So functions are logic that can carry data, and not the other way around. (You can do it, but it's unsafe because everything is mutable.)
- And for closures, it's not the fact that they exist, but rather, how they are used. Closures (Or any function for that matter) are how you create private scope in the language and how you implement secure logic, further illustrating the paradigm of behaviors with storage, rather than storage with behaviors, which is a Lispy concept.
- Prototypes reverse the lookup between code and data again, very similar to how generic functions do it in LISP.
- Code and data can both be used interchangeably; code can be data, and data can be code.
- Any data (Whether functions, objects, or information) can be created via anonymous means and put anywhere.

And "key-based data" is just laughable - any language with an associative dictionary can do the same, even Java - even if the latter doesn't have syntax quite as nice. But e.g. in Python it's literally the same syntax:

Yes other languages have the above concepts. I wasn't saying they didn't. I was just hoping to draw attention to how similar the two languages were. (Which is why I called it key-based, because that's what it is in Scheme.)

Brendan Eich wanted to make a dialect of Scheme (A LISP), or at least a language as similar as he could when he first make JavaScript. Apparently the people at Netscape wanted the language to at least vaguely appear similar to Java. (Just silly marketing)

The entire creation process is actually really interesting actually...

With Scheme being the inspiration behind the language, I wanted to draw a few lines between the two to show that there are indeed a lot of similarities, and that if you treat JavaScript like Scheme, you'll have a much easier time with it.

At this point, I have to ask: are you actually familiar with other languages beyond JS and Lisp? In particular, are you familiar with Python, and especially Ruby? The latter in particular is much closer to Lisp than JS ever was.

I'm not gonna lie. I am unfamiliar with both Python and Ruby. Though my repertoire of languages extends beyond just JavaScript and LISP.
Either way, I only focused on those two languages because they were the two I wished to draw similarities between.

Comment Re:Aprils Fools? (Score 1) 387

JavaScript obviously isn't the first for those concepts... But it is also a completely different animal than Python or Ruby...
It is pretty much LISP in disguise with more C-like syntax. And rather than using RPN, it uses a more standard paradigm for it's layout.

Lets compare your example and a few other things between JavaScript's and LISPs style.

Anonymous functions:
JS: function(x, y) { return x + y; }
LISP: (lambda (x y) (+ x y))

JS: function closure(val){ return function(){ return val; }; }
LISP: (defun closure (val) #'(lambda () val))

Key-based data:
JS: {"thing": "value", "anotherthing": "anothervalue"}
LISP: '(:thing "value" :anotherthing "anothervalue")

You should not treat JavaScript like Ruby or Python because it simply doesn't use the same practices, and you will hate JavaScript if you do. That weird syntax comes from its roots, and actually makes a lot of sense when you look at it in the same light as you would a language like LISP.

Comment Re:Aprils Fools? (Score 1) 387

Most people I talk to on the matter seem to dislike JavaScript because the DOM is horrible (Which I agree with), and some features work much differently than most other C-like languages. But that is expected because it was highly inspired by Scheme, and as a result, ended up being a very functional language.
In the end, it just comes down to opinions of coding style. Of course, opinions vary from person to person.

I doubt I'll change anyone's opinions, but I'll give the main reason I like the language.

It primarily boils down to: A lot of things don't require much overhead. You can make quite functional code and pretty good APIs with a pretty reasonable amount of code.

For example, anonymous object creation is pretty cool. You can create a completely usable object like this:

        var obj = {"name":"Person",
                      "getName": function(){

        obj.getName(); // Returns "Person"

As a result of this, you can have have a pretty decent data hierarchy with minimal boilerplate code. Also it allows functions to accept an object as a parameter to greatly modify it's functionality so you can cut down on code-duplication, kinda like how keys work in LISPs. So you can design incredibly abstract functions that can do pretty much anything given the amount of possible argument combinations. Yes you can use bitwise operations and structs in lower-level languages like C and C++, but this ends up being a bit more than a bunch of boolean options or piles of structs, but rather things you can specify with no real boilerplate in lieu of things like (kill-with-fire :intensity 10). Since functions are first-class, you can pass them around just like anything else.

The way to differentiate between statements and standard operations is also kinda cool.

        (function(){ return "Hi"; })();

This is a self-running anonymous function for example. It can be used to perform logic in a very functional style (Inline another function or some form of data), and can actually create things like namespaces if you use it as a closure (By returning a function with your desired API in it).

If you expect JavaScript to be like Java or C++, you will be sorely disappointed, but that truly isn't it's place. It's not perfect by any stretch of the imagination, but overall it actually has a lot more merit as a language than people seem to give it credit for.

Comment Re:GNOME devs are so blind (Score 1) 162

Have you considered Cinnamon? It's a fork of GNOME 3 that ended up being what I was hoping GNOME 3 would become. You can customize it to become a very similar experience to GNOME 2 (By default it's more Windows >= 7-like), it uses GTK3, it has a usage paradigm that most people are used to, and the things that are different are changeable.

It's also really pretty.

Comment Re:Why is this not major news on Reddit? (Score 1) 589

You are such a damn liar... Here's a list: (Most of these managed to get over 100 upvotes, some almost 5000)

I've got more if you want them. Don't mislead people.

Comment Re:That's the whole point (Score 0) 123

I'd like to point out: That wasn't his point.

His point was that beliefs have nothing to do with intelligence. There are undoubtedly brilliant people over there who know how to program well. And who says that a place that doesn't agree with evolution doesn't tech other courses like math at a high level?

That's linking two unrelated things.

Slashdot Top Deals

You cannot have a science without measurement. -- R. W. Hamming