Domain: stackoverflow.com
Stories and comments across the archive that link to stackoverflow.com.
Comments · 921
-
Re:This should lead to some "interesting" malware.
But in the other post you talked about it as a distant goal, while it's already done or close.
Firefox 3.6 and Chrome have had drag and drop for months now.
Support for video, audio and PDFs (Chrome only) is already there or close.
I also understand that there are quite a few security problems to solve before any of the above can happen. But shouldn't we already be preparing for the eventuality that our web-connected computers will one day be capable of this?
But that's the thing: it's not "one day", it's now or a few months from now. The browsers already do this, at least in their betas. Now, how long 'till every browser supports them (*cof* IE *cof*) and web developers start using those features, that could take a while.
-
Re:it's more about memory, less about IO schedulin
That doesn't seam to be true.
http://stackoverflow.com/questions/1580923/how-can-i-use-linuxs-splice-function-to-copy-a-file-to-another-file
This is something I was wondering. As I understand it splice/sendpage just marks a page belonging to a block of one filesystem as a page of a block of another filesystem. Thus no memory copying, the same RAM the data was read from one disc is used to write that data to another disc. So I think markhahn has a point, the problem is userspace, not the kernel. The cp code could be faster if it used splice/sendpage zero copy stuff (when dealing with filesystems that it is possible to do so (i.e non-FUSE)).
BusyBox certainly doesn't http://git.busybox.net/busybox/tree/libbb/copyfd.c -
Other languages available for Android?
Seems like Python would be the obvious second language to be compiled to Dalvik bytecode.
See this thread from back in 2008 before Android even shipped.
Linked at the bottom of that thread are the Dalkvik VM docs (link updated to head).
Also is a Stack Overflow post that links to many methods for Python and scripting languages to create Android apps. (Though some methods like Jython are still using Java.)
-
Re:old hardware, probably
I appreciate your reply --it's a touchy subject.
Regarding VS, Enterprise is still Enterprise, not free. We are misled since VS Express did compile our DOS-only-GUI Computer Science homework, to believe that utilizing MS's C++ compiler freely means we get a *visual* Windows GUI designer should they we ever become Win32 programmers. Why do they even call it Visual if they withhold the visual component part in the free version?
;-) We miss out on MFC, ATL and anything related to dialogs for Win32 code. When we actually need forms (GUIs) for Win32 stuff in C++, MFC, Dot Net or ATL or WTL GUI's, VS Express fails. Coding them in by hand is hardcore, and Code::Blocks or DevC++ or even VS Express are nowhere near replacing that, the most elusive feature found only in the Pro versions.For that, we need non-express cash (or illegal hacks.) The US link(*) lists 1200 dollars for Pro and $799 for upgrades. Well, I've seen Adobe software in the several thousands, so it's not too crazy. VS 2010 seems to be real cheap in Spain --only $500 euros.
I tested VS Express, still the only free-tier version on MS's website. To MS's credit there are demos for pro and enterprise that I may check out.
* Had trouble getting URLs for the USA due to browser/server region redirects. Thanks, Ubuntu 10.10 RC for Spanish/USA!
;) -
Re:based on a 1970s OS and language
That's almost as intelligent as this post
-
Re:If it's not broke...
For some reason this comes to mind
-
Re:As someone whose income depends on the PS3...
This appears to show you to be incorrect http://stackoverflow.com/questions/3550556/ive-found-my-software-as-cracked-download-on-internet-what-to-do
-
Re:As someone whose income depends on the PS3...
-
Please don't use MSSQL
If you are using hand-rolled SQL, most MySQL queries will execute on Postgres without much modification. However, MSSQL will be vastly different.
For example, look at these ugly MSSQL queries with explicit locking, which you will probably have to use as developers and DBAs can't seem to agree on a standard isolation mechanism:
SELECT COUNT(UserID) FROM Users WITH (NOLOCK) WHERE Username LIKE 'foobar'
and
UPDATE Users WITH (ROWLOCK) SET Username = 'fred' WHERE Username = 'foobar'
Also, there is no LIMIT / OFFSET keywords in MSSQL, you have to do crazy shit like:
WITH results AS (
SELECT
rowNo = ROW_NUMBER() OVER( ORDER BY columnName ASC )
, *
FROM tableName
)
SELECT *
FROM results
WHERE rowNo between (@pageNumber-1)*@pageSize+1 and @pageNumber*@pageSize
Source: http://stackoverflow.com/questions/187998/row-offset-in-ms-sql-serverYou will soon realize that the Express version is super-limited (4GB max size, 1 GB ram, 1 core, no replication, etc.)
Source: http://www.microsoft.com/sqlserver/2005/en/us/compare-features.aspxPostgres is highly tunable, but the defaults (that ship with many OSes) are for small footprints. This is an older document, but still relevant with explanations and the annotated config guide (bottom of page). Throw 8 cores and 16GB ram at Postgres, tweak the conf a tiny bit, and the feature set and performance will surprise you.
Tune Postgres: http://www.varlena.com/GeneralBits/Tidbits/perf.html
There's no reason to use MSSQL unless all of your development and applications are on Windows, and your development team can't use anything other than their IDEs in a limited way. Once you start using Postgres, and realize the power behind it, you'll never want to use anything else.
If, for some strange reason, your company wants to spend money and buy DB support, go for a commercial vendor of postgres. Enterprise DB has some nice management features: http://www.enterprisedb.com/products/index.do
-
Re:Yeah it's crap.
Exploits indeed. NoScript protects me from them...which is kind of the entire point. It not the intended use of JS, is the intended misuse that gets people (like you, I assume) to unknowingly open the door. On some of your particular points:
JavaScript local files access 'interfaces'
Of course there's not. You have to make it happen. It takes about 2 minutes.
HTML
Just because you "...wouldn't be surprised if there has been some exploit.." doesn't mean it's ever happened, or even if it's possible. Find some facts and then make a point.
Images
Really? A 5 y/o issue is the best you can do? The JS exploits I listed earlier were only a month out. What's more, any non-administrator (or non-Windows computer) was not harmed by WMF files (unlike like JS that can be a universal killer).
And I think any fantasy that it was harmless to allow JS (or any script) to auto-run was dispelled yesterday. No clicks required, no particular OS required, no admin rights required. Of course, NoScript users were immune from this. -
Device drivers
So what is the definition of a "kernel extension" then?
A module that runs in kernel mode, such as a device driver or a filter driver. Windows Vista introduced a user-mode framework for some kinds of device drivers, but it's not complete: input device drivers still must be kernel modules, and the code signing requirement for these on 64-bit versions of the operating system hurts hobbyist or low-volume makers of accessibility tools.
I understood that antivirus apps used to operate by hooking the Windows kernel and post Vista SP2(?) that's not allowed anymore.
I did a Google search for windows antivirus hooks that led me to a question on Stack Overflow whose answer was file system filter drivers.
-
Re:Persistance
Flash is actually quite bad at this use case. Every widget you drop on the page will be it's own Flash instance, and suck up 40MB of RAM. You can only put a handful on a page before you get serious performance degradation. http://stackoverflow.com/questions/531869/multiple-flash-objects-on-a-single-web-page
-
Re:Hardware support is still weak
It's unfortunate that every time someone wants to talk about Linux, they seem interested in only one metric: can Average Joe use it?
Other than coming across as a remarkably modern rendition of Solaris 9, what else does it have going for it? It's not even the most developer friendly OS anymore because the world largely moved on to Windows centric or Java development. Free software is easier to use on Windows or OS X. That's not a lie.
Then there's the obvious fact that this
/. submission is titled "Gestures With Multitouch In Ubuntu", and you've got to wonder why NOT ask if the Average Joe can use it??You can pick your own reason for not using it; fine. But don't pretend like you have some magical solution to fix the thing you hate so dearly.
You don't like the Average Joe nitpicking? Fine.
Here's a suggestion: repos and the "everything must be in the repo" concept exist because of the unstable nature of free software. Unstable as in constantly changing in incompatible ways. FIX IT!
There is no good reason why I can't go install the latest GIT binary on an old copy of CentOS or RHEL. Don't fix it for the sake of free software though, at least make install is an option for some people. (food for though: Is make install really an answer for those who would run RHEL?) fix it so people can write non-free software for Linux and not target a hundred platforms. Why is libstdc*-compat* even an optional install? Why does your competition have a three line answer to this problem? http://stackoverflow.com/questions/1406645/building-a-backwards-compatible-os-x-app-when-a-new-api-is-present
And your biggest competitor at least has an answer: http://stackoverflow.com/questions/1073509/should-i-redistribute-msvcrt-dll-with-my-application
Normally, you'd vote with your wallet on a problem like this. Free & quality is such a mind fuck.When will the Linux community pull its head from its ass and stop repeating the "only good software is free software" BULL SHIT. It needs non-free software, period. There's my magical solution to something I hate.
I'm sorry, but what metric do wish us to judge Linux by? When your only answers are full of dogma and ideology, it's hard for outsiders to take you seriously. It's popular to personify Microsoft and Apple as emotionally charged beings wrecking havoc on your lives, just as it's popular to personify the government the same way. In politics though, we call those people kooks. Get on with business folks.On a more cheery note, I think Linux will continue to be used where it makes sense. If you have a stake in where that is.. you MAY want to start suggesting metrics.
-
Re:Hardware support is still weak
It's unfortunate that every time someone wants to talk about Linux, they seem interested in only one metric: can Average Joe use it?
Other than coming across as a remarkably modern rendition of Solaris 9, what else does it have going for it? It's not even the most developer friendly OS anymore because the world largely moved on to Windows centric or Java development. Free software is easier to use on Windows or OS X. That's not a lie.
Then there's the obvious fact that this
/. submission is titled "Gestures With Multitouch In Ubuntu", and you've got to wonder why NOT ask if the Average Joe can use it??You can pick your own reason for not using it; fine. But don't pretend like you have some magical solution to fix the thing you hate so dearly.
You don't like the Average Joe nitpicking? Fine.
Here's a suggestion: repos and the "everything must be in the repo" concept exist because of the unstable nature of free software. Unstable as in constantly changing in incompatible ways. FIX IT!
There is no good reason why I can't go install the latest GIT binary on an old copy of CentOS or RHEL. Don't fix it for the sake of free software though, at least make install is an option for some people. (food for though: Is make install really an answer for those who would run RHEL?) fix it so people can write non-free software for Linux and not target a hundred platforms. Why is libstdc*-compat* even an optional install? Why does your competition have a three line answer to this problem? http://stackoverflow.com/questions/1406645/building-a-backwards-compatible-os-x-app-when-a-new-api-is-present
And your biggest competitor at least has an answer: http://stackoverflow.com/questions/1073509/should-i-redistribute-msvcrt-dll-with-my-application
Normally, you'd vote with your wallet on a problem like this. Free & quality is such a mind fuck.When will the Linux community pull its head from its ass and stop repeating the "only good software is free software" BULL SHIT. It needs non-free software, period. There's my magical solution to something I hate.
I'm sorry, but what metric do wish us to judge Linux by? When your only answers are full of dogma and ideology, it's hard for outsiders to take you seriously. It's popular to personify Microsoft and Apple as emotionally charged beings wrecking havoc on your lives, just as it's popular to personify the government the same way. In politics though, we call those people kooks. Get on with business folks.On a more cheery note, I think Linux will continue to be used where it makes sense. If you have a stake in where that is.. you MAY want to start suggesting metrics.
-
Re:SuperGenPass
I just looked into SuperGenPass, and there are two things that scare me:
1) If any site that you use SGP on is compromised with an XSS attack and you're using the bookmarklet, they can harvest your _master_ password.
2) This post, from a seemingly intelligent cryptographic researcher stating that the basis of the math behind SGP isn't sound: http://stackoverflow.com/questions/554224/is-the-bookmarklet-password-generator-from-supergenpass-com-safe-to-use. -
Re:ImageMagick and remove metadata
Yup, and it recompresses the image when you do so. See suggestions here for ways of stripping it without recompressing.
-
Re:Yup.
Last time I checked, there has not been any shortage of idiots on this rock.
These days, every kid with dollars in their eyes will download and install the iPhone SDK or whatever they call it and flooding forums for API help and that stuff. Here: http://stackoverflow.com/questions/tagged/iphone
They all have heard that there are millions to be made on iPhone applications.
The idea is not bad at all, the execution however is a lot real-life version of George Orwell's 1984.
Apple probably thinks that if the developers can become rich on applications they develop for Apple's platform, then Apple should get richer too on developers themselves, and I am not just talking cut of the application selling price. They think patenting foreign ideas, yeah generally everything they can conceive that is not outright illegal by law. And if it is, there are always the courts and lawyers hungry for battle. -
Astronomy Stackexchange
They're still looking for enough users to commit to open up the beta, but Stack Exchange (the folks behind Stack Overflow, Server Fault and Super User) have a proposal up for an question & answer astronomy site:
-
Plethora of Options
Couple points:
1. You have to get your mind in the 'programming' mindset. Learning programming isn't necessarily purely about being a techie. You need to have solid logic skills. Much of programming is spent just getting logic right. Check out Boolean Logic for an launch point. The knowledge you gain from briefing this area will carryover into many, many programming languages. Programming *is* logic.
2. Learn what you want to program for. Pick a startup project. Is it a website you want to make? HTML & CSS is very different than learning C or C++, likewise, SQL is very different than assembly. Not that certain concepts don't carry over, but much of being a jack of all trades is simply having the ability to have good conditional logic skills, and the ability to Google things quickly and learn to apply them as you go. You don't have to become a master of all languages, or hell, even one language, but if you are truly *interested* (thats the keyword, if your not interested, its just not going to happen), and you have done a little programming in a couple of simple languages, then you will be in a good position to progress to more difficult projects.
3. Learn what you want to program for. Again. Repeated point. There are hundreds of programming languages, platforms, architectures, styles, libraries, etc. Pick something you are interested in, read about it a little bit, and if it looks like the learning curve isn't too ridiculous, start there. Perhaps a simple text based JavaScript browser game. At the end of the day you will know a bit of CSS, HTML, and JavaScript if you put your mind to it. But thats just one example.
4. W3C. This website is a good starting point for all things web.
5. Chrome Experiments If you really like web, check out the future of browser bling. Heavy JavaScript and HTML5
6. Databases. Not the most mentally entertaining, but you will need the knowhow to connect, select, insert, update, and delete data if you are doing anything with data. I am a Microsoft guy, and I can tell you that the Express Editions of Visual Studio are a greating starting point for a newbie, at zero price-point, and bundled with SQL Express, thats a good place to begin.
7. Also, places like CodeProject, StackOverflow, and CodePlex are great tools for questions ranging from the most basic to the most advanced of topics, and downloading sample code and live projects for tinkering around with. -
Re:I'm confused...
IIRC this has to do with the API change from 1.5 and earlier to 1.6 and later. Because that permission never existed in 1.6, any app targeting that platform will show as requesting the permission on 2.0+
See the second comment here: stack overflow
The problem is that it comes up for any dev targeting 1.5 and earlier, so it comes up pretty often. Google probably could have handled the permissions differently but I cant think of any better ways off the top of my head at the moment. -
Better place to ask
Isn't this a better question for StackOverflow.com?
-
Re:Lisp
Very funny. Also funny is the result of the following Google search:
First result:
http://stackoverflow.com/questions/232486/best-common-lisp-ide
I did the search in a lisping language too, to humor you.
-
Re:Objects...
"Parametric polymorphism" (i.e., templates) isn't the only way to achieve polymorphic design. There is also "static" polymorphism (using CRTP, also templates) which is much more like runtime polymorphism.
Boost uses CRTP in several places. As for anywhere else in the OSS world, I wouldn't look too heavily. I think you will notice that nearly all C++ experts are routinely employed by some closed off company.
-
Re:Someone needs to lose their job over this
idiot
... check user input with ... a regexahem.
-
Re:Who studies C.S.?
Today's IT don't need a bunch of uber-gods. It needs competent people building usable IT systems based on good practices of C.S. That's what C.S graduates should be. Some schools make a thinking pros, others produce trained monkeys. Both are needed in a sensible balance but what fails in employment process is distinguishing if a trained monkey or a thinker was needed and witch category does the person being considered belongs to.
Who said anything about IT? IT should recruit Software Engineers; leave the Computer Scientists alone. Scientists are meant to discover what is already there, not to build things. The only things scientists should build are experiments in order to discover what happens, which is exactly the opposite of the predictable, reliable, maintained systems needed for IT.
Also, we are in DESPERATE need of uber-gods. For a rather tongue-in-cheek example look here http://stackoverflow.com/questions/432922/significant-new-inventions-in-computing-since-1980 . Computer Science has solidified into a 'known' thing, much like 19th Century Physics was Newton + Thermodynamics + Maxwell's Equations, with everything else, the entire study of the whole Universe, being considered as 'working out more decimal places'. 'Knowing' things in any Science can be dangerous, especially in one as young as Computer Science. We need 'uber-gods' to point out the obvious, the assumptions we've been making that have cut us off from vast unexplored territories. Computer Science is certainly not about 'building usable IT systems' any more than Quantum Mechanics is about building efficient steam engines, despite the latter kick-starting Physics as we know it.
Another problem IMHO is that there's lots of 'fluff' going on under the label Computer Science, for example pulling quantities out of social network statistics, which belong in other subjects (eg. Sociology). Just because something can be done on top of computers doesn't make it automatically Computer Science, any more than the study of spoken language is research in Fluid Dynamics, Meteorology and Wave Theory. This distracts from fundamental research (proof & model theory, decidability, information theory, formal linguistics, programming language theory, etc.), in the same way that Materials Science can distract from fundamental Physics and is thus a separate-but-related discipline.
-
Re:Captcha correction?
Check into how the current reCaptcha works. The user is presented with two words. One is known to be correct. The other is suspect. User is unaware of which is known and which is suspect. User types both words, and backend system verifies the known word was typed correctly. Logs suspect word value typed by user. Returns the suspect word image to a few more users, and if they all respond with same text along with correct known word, the system can assume the suspect image contains the text returned. http://stackoverflow.com/questions/1435696/how-does-recaptcha-work
-
Re:That's ok...
I agree, check this site out
-
Re:Poor programing practices, NOT IIS or SQL at fa
A Stackoverflow answer explains the advantages very nicely.
-
Re:A couple of the potential uses
Well. Not really "address". But you could write own interrupts that messed with the VIC chip to allow sprites to move over the borders.
Details: http://stackoverflow.com/questions/1477444/how-do-i-show-sprites-in-the-border-on-c64
But those interrupts made the system somewhat slower in general.
-
Another sign...
... I value most than Tiobe's dummy ranking, is the popularity of tags in Stackoverflow.
Granted, it correlates more with questions asked by programmers (many of them beginners) than with jobs.
Anyway, you can see that also there "Objective-C" has a (surprising for me) high position (as well as "iPhone"). -
Re:huh?
Obj-C and C++ are about as similar as Python and Lisp. C++ has the capability to do OOP, but rather awkwardly -- there are better languages for that, like Obj-C. C++ hasn't been about object-orientation ever since it evolved past C-with-classes.
Personally, you can keep Obj-C. Programming OOP style leaves me with the same distaste I feel with non-typesafe dynamic typing. Both tend to have exponentially rising fallibility with evenly rising complexity.
-
Anti-anti-frame busting code exists...
...and it works.
The caching technique described in update two coupled with update three of this: Anti-anti-frame busting article works for all cases that I've found when someone is wrapping your site.
The site I develop for is in the financial services industry. It is a big no-no of our clients to do this, but they still seem to wrap their site with a frame at the top which includes their logo.
After seeing some complaints from Jeff Atwood on www.stackoverflow.com (specifically this post: www.stackoverflow.com) I found the article in question.
-
Re:We have it. It's called the World Wide Web.
OpenID is normally pretty simple but it seems MAKE's implementation is totally borked. A lot of sites make it really easy by giving you a list of OpenID URLs to pick from, for example StackOverflow does this, http://stackoverflow.com/users/login. Since your Google profile IS an OpenID you can just put your profile URL into the login box, http://www.google.com/profiles/yourusername. If you don't trust the website with your profile URL Google also provides a redirector that works as an OpenID at https://www.google.com/accounts/o8/id.
-
Re:Its not black & white
The fact that stack crashing doesn't exist in interpreted code alone demonstrates that languages (or their runtime environments that are inherent to a language) are not all equal in exploit-ability levels.
You are totally wrong, since Javascript, which is interpreted, has numerous exploits involving stack crashing.
http://en.wikipedia.org/wiki/Heap_spraying
with an example here:
http://stackoverflow.com/questions/381171/help-me-understand-this-javascript-exploitActionScript (from Flash) is also an interpreted language, and full of security bugs !
-
Buzzword complement
Distributed computing was around for years. Someone decides to call it "Grid computing". Nope.. Not sexy enough. Someone calls it "Cloud" and it takes off.
Winning definition from Stackoverflow was:
"Cloud Computing. n. Yet another buzzword for services on the internet to trigger silicon valley VC's 'NextBigThing(R)' reflex, thus attracting some money which otherwise be spent on a new yacht."
http://stackoverflow.com/questions/1349894/difference-between-cloud-computing-and-distributed-computingclouddot?
hmmm..... -
Apple would just be more specific in rejectionApple would start going and imposing more specific restrictions on apps. For example, if your app size is too large (monotouch hello world is 5mb while objective c is 50 kb) it gets rejected. If the app memory foot print is too large it gets rejected (garbage collection is automated in flash). If the app doesn't play nicely with multitasking in 4.0, it gets rejected. If the app doesn't run under hypothetical future architecture it gets rejected. Etc..
Any of these technical requirements would reject apps written under other frameworks without saying "must be written in C / C++ or Objective C".
Even if Adobe wasn't giving up on the flash to iDevice, consider how far behind they will fall when firmware 4.0 is released. How long would it take Adobe to release an update that handles background services, voip and other new features?
This really is the crux of Apple's restriction. If Adobe (or any other iDevice packager other than Xcode) became the dominant platform, it would be up to that company to add in new features that the previous firmware released. Apple has been burned by Adobe before and doesn't want to be beholden to anyone to have support for their firmware now. This is also likely why HP bought Palm - so that HP wouldn't have to wait for Microsoft or Google to do something new and game changing.
-
Re:What's in a name?
I've heard the same group that developed JQuery is working on a database querying framework called JDisplay.
Always thought it was a weird name, but having used it, it's clear the name jQuery refers to the power that comes from being able to "query" the DOM with CSS3 Selectors (originally Resig wanted to name it JSelect)
Play with it for a while... going back to getElementById() and getElementByName seem archaic (Sizzle js does exist now, and jQuery 3+ uses that).
-
Re:None, I have given up bash scripting
Does `find . -print0 | xargs -0` really qualify as "serious hack magic"?
IMHO there should have been a bit more restrictions on what characters a Unix filename can contain. It would make (scripting) life a lot easier. For example: why did they allow newline characters?
And there are other problems as well. Check this out:
Why does the wc utility generate multiple lines with “total”?
-
Re:Sue Apple Over Flash?
Consider the possibility that Flash (or Monotouch) becomes the dominant development platform for the iDevice. Aside from resource issues (a Monotouch 'hello world' on the iPhone is a 5mb file while an objective C version is 50 kb (see this thread) and the impact that could have on multitasking (being able to run fewer apps), look at the features the framework offers.
So, lets say that Apple releases firmware 5.0 next year with a bunch of new features and 75% of the apps are written in flash How long will it be before these apps can take advantage of the new firmware? The answer is - when Adobe gets around to releasing a new version. So there is an iPhone with all these new features that the consumer can't use... and Adobe is waiting to get the android or windows phone up to a similar level so it can release something that can again target all the devices. This isn't a good situation for Apple to be in.
Another thing to consider is if a new firmware release exposes a bug in the runtime libraries that are brought in. Now you upgrade the firmware, and a majority of apps on your iDevice crash. Who does this reflect badly upon? Apple and the developer... and yet Apple can't go and fix a bug in a third party runtime and the developer has to wait until there is a new release from Adobe.
In these situations it is Adobe (or Novell) that will control the iDevice experience - not Apple. That is just not something Apple wants to let have happen.
-
Re:Perhaps now he can admit a few mistakes in JavaYou sir, are speaking out of your ass. Here are some hard numbers for you. I wrote the same test in C and in Java, which is basically a test of function call speed. Here is the Java version:
public class recurse {
public static void main(String[] args) {
factorialRecurse(12);
}
public static void factorialRecurse(int val) {
for (int i = 0; i < val; ++i) {
factorialRecurse(val - 1);
}
}
}and the C version
void factorialRecurse(int val) {
int i =0;
for (i ; i < val; ++i) {
factorialRecurse(val - 1);
}
}
void main(int args, char * * argc)
{
factorialRecurse(12);
}The code in question was compiled and executed. The java version took about 7 seconds to run. The C version varied between 10 seconds for the O2 level optimizations and 5 seconds for the O3 level optimizations and above. Hardly compelling evidence for 'Java function calls are slow'.
Java is interpreted, So before everyone flames - yet again - that it's "compiled" - do your research and get over it already.
Once again you are engaged in rectal whistling. Java is compiled to non-platform specific bytecode, and then depending on the JVM may or may not be transformed into CPU specific instructions at runtime. There are also tools out there to compile Java code directly to machine code as well as interpreters for C and C++. There's a good discussion of the intepreted vs compiled topic here
-
Re:Narrow interpretation
Another lesson here: Don't use IE on a public computer. It's the only browser that saves HTTPS sessions to disk.
-
Re:Cannonical is just trolling us
Name one platform manufactured today that doesn't use 8-bit bytes.
Any platform aspiring to the POSIX standard uses 8-bit bytes which pretty much means everybody, but it wasn't always that way:
http://stackoverflow.com/questions/2098149/what-platforms-have-something-other-than-8-bit-char
A lot of the embedded stuff like DSPs use 16 or 32-bit bytes. If you own the processing stream you can pretty much do what you want inside of it.
-
Re:Not very persuasive...
Yeah, it limps alright. Just take a look at StackOverflow.
-
Second SO
Anyone care to inform where the board went, or whether there are similar boards? It was the closest that you could get to a
/. system, with the benefit of flat threads, lack of censhorship (negative moderation will kill initiative, and I don't mid sifting through crap if the total threads are expunged slowly and aren't more than 30 or so.) There were no "news for nerds," but that meant everything was code-related, and complete noobs were somehow filtered out.Thanks.
I'll second the Stack Overflow suggestion.
-
Re:Victory against monoculture
I don't really mean to be inflammatory when I say this but... if you want to be a UI designer, you might have a ways to go. Interestingly, you seem to think more like a programmer, that is "why use such an inefficient method of navigation when clicking a single dedicated button is so much faster?" It's what I call a "God Panel" which does anything and everything the user needs in the application, and is all too commonly found in in-house applications. It makes sense to the programmer who knows the program inside and out, and put every button that appears on the panel in its spot himself. After all, why spend the development time on an inefficient navigation system and why spend all the user time navigating those menus and dialogs? All the user need do is spend a few minutes learning the layout of the buttons on the God Panel and what each does.
The problem is, this is not well optimized for a human user. Our brains are made in particular to pattern match, not serially analyze. Take the standard 3-button media player control scheme of previous-play/pause-next. What do you suppose would happen if you swapped the positions of the previous and next buttons? A lot of angry and confused users, I would guess. Their brains have been trained to expect those functions in those positions, regardless of the fact that the buttons still have the appropriate label/icon on them.
The other problem is overwhelming the user with too much information at a time, which makes the brain's filtering abilities less efficient. Take a look at this thread for some examples (there's also a humorous comparison where Apple's interface is a single giant button, Google's is a text box and a button, and your company's app is a swamp of dialog controls). Almost all the "worst UIs" listed there, fail because they present too much information at once to the user. Your brain does its best to filter through all the information to get you to what you need, but it's a losing and frustrating proposition.
Now let's look at the iPhone's UI. The device is made with 4 purposes in mind: phone, personal data management, Internet browsing, and media playing. What are the 4 main virtual buttons on the home screen? A telephone, a mail envelope, the Safari icon (which, admittedly, is probably not intuitive to someone who doesn't know what Safari is), and an iPod icon. All immediately available with the thumb that is probably controlling the device. Just as important, the apps that open upon touching one of these icons support the user's train of thought. If I touch the telephone icon, it's because I want to make a phone call so it's very helpful that the interface changes to something that will help me accomplish that task, namely showing me a list of people to call or presenting me with a keypad to dial my desired number.
An ancedote that illustrates another example: getting my mom to understand how to operate a TV remote well enough to turn the devices on. In short, she can't (I'd argue won't since she's not dumb, but the end result is the same). It's pretty obvious to me and anyone familiar with technology in general: push one of the buttons at the top to select which device you want to control (cable box, TV, DVD player, etc.) and then push the big red "power" button. Easy, right? Bzzt. She see's all the buttons, half of which she'll never need, and her brain shuts off. If we could dumb-down the interface by adding intelligence to the system as a whole (i.e. devices talking to each other to get the result the user wants), she'd have no trouble. As a further example in support of the "dumbed-down interface": She could never figure out how to send text messages on her old Motorola, even with instruction. She figured it out on her own the first day she got her iPhone. -
Go innovates programming practice, not theory
"Go is not meant to innovate programming theory. It's meant to innovate programming practice."
I have done a lot of reading about Golang and have followed the community since its launch. The people involved are great, and the language is extremely straight-forward. I would put it up against any other language as a first-learned programming language. Golang is a "patterns" based language -- like javascript. This makes it EXTREMELY flexible. It is, however, very different from non-pattern based languages, such as C/C++, ruby, python, etc. Perhaps one of the reasons I have great appreciation for it is because I fell in love with javascript (the good parts), after watching the videos at: http://stackoverflow.com/questions/110371/what-javascript-tutorials-on-the-web-would-you-recommend/111177#111177
I see a lot of potential for this language. I have recently been really impressed by javascript, as a completely different approach to programming thanks to closures (I'm coming from C/C++ & Python). I think golang is everything that made javascript a huge leap forward in programming methods back in the 90s, nothing that makes it bad, and add a great multi-threading layer on top of that.
While the libraries are still lacking, that says nothing about the language itself. Libraries come over time. Though, I must say that the base libraries that the language was launched with provide enough for people to do some great stuff.
-
Re:Seems like the right solution to me
And if you google "javascript random sort" like most programmers who don't use "shuffles" every day (or ever), the top hit is exactly what Microsoft implemented.
A couple of results down yields this link that talks about how it is wrong in several ways to use sort verses a shuffle.
This comes down to a programmer just not doing enough research before implementing a solution. Programmers who use the first Google link without digging deeper can get themselves into some serious trouble. A few minutes spent up-front doing a little research can save you hours of headaches later.
-
Real-world programming
Program something for real. Be goal-oriented. No amount of working through exercises teaches you programming for real.
Seconded.
Once one get all the basic and theoretic concepts (tree, lists, classes, whatever), the bast is to start tackling some real-world problems.
Book-wise:
- One might be interested in books which show how some practical problem and real-cases got solved in Java code (Can't point to a good example being not a Java programmer my self, but probably O'Reilly has some interesting books).
- Info about useful classes and libraries might be useful too (because once you start coding your self, you'll eventually need to interface with some programs or access some data).Experience-wise: (if the night watch jobs allows it) get a laptop with enough power to run a java development environment, and think of a few problems you have that would be easily fixed with some program.
Start with small problems (need some app to store your groceries list ? some app to prepare a series of invitation to your birthday party, using a list of guests as input ?) as long it's a small thing you're fed up doing by hand, it'll be a nice task to tackle with code. Just something where you need to apply the concepts you know to solve real-world problems. (Instead of the "design a doubly-linked list" kind of things you find in assignments)
Then grow bigger.
In the end, once you get some experience, you might want to code a simple game or something similar.Don't be afraid to go to coders' places such as stack overflow to ask for tips.
-
Re:freshmeat
Yeah. And AlternativeTo, ohloh, Linux GameTome, Stackoverflow, slashdot! It didn't help my project, but then, it's only starting and pretty niche too.
If there is no relevant question on StackOverflow, make it up and answer it yourself.
Google for your keywords and try to plug your project anywhere. -
Re:h264 being "not open" confuses me...
x264 is only an encoder for the H.264/MPEG-4 AVC standard. It does not handle decoding.
Doesn't make an iota of difference what decodes your video, if you're not legally allowed to encode it in your jurisdiction using a patent-encumbered codec in the first place.
Citation definitely needed. The project calls itself a H.264/AVC encoder [videolan.org].
http://stackoverflow.com/questions/1500342/h264-decoder-source-code
Being implemented through reverse-engineering doesn't matter. Anyway, it seems the specification is freely downloadable [itu.int].
The specs for FAT32 are available, too. Didn't seem to do TomTom much good, did it?
http://www.microsoft.com/whdc/system/platform/firmware/fatgen.mspx