Slashdot Mirror


Hacking Quartz

Exposed writes "Meaty interview with Rich Wareham who is known to Linux users for his libdvdnav library which is used by Xine and other linux players. On OS X he created Desktop Manager, the GPL solution for VirtualDesktops on the Mac. Highlights are secret APIs in OS X for VirtualDesktops, who steals GPL source and why beginner programmers are at a disadvantage now."

298 comments

  1. Why it wasn't put in already by emo+boy · · Score: 3, Insightful

    I am just curious why OS X didnt' support this out of the box with at least Panther. Is it just me or was this a no-brainer?

    1. Re:Why it wasn't put in already by Ianoo · · Score: 5, Insightful

      Perhaps Apple's HCI team didn't consider it to be "intuitive" or comprehensible/necessary for the average user. After all, the majority of Macs are shipped with high(ish) resolution screens these days, and the Dock and Exposé take care of managing your screen real estate fairly well.

    2. Re:Why it wasn't put in already by manabadman · · Score: 1

      I guess they were trying to innovate with Expose. Both these features address the same problem. They both allow users to manage multiple open application quickly and easily.

    3. Re:Why it wasn't put in already by Jeremy+Erwin · · Score: 0

      Apple believes that Expose is a better solution.

    4. Re:Why it wasn't put in already by needacoolnickname · · Score: 2

      Compared to Desktop Manager. So do I.

    5. Re:Why it wasn't put in already by boaworm · · Score: 4, Informative

      Of course this is a matter of taste, but i dont agree with you. Expose for me is pretty useless. OK, we can highlight a few applications, but that's not my problem.

      My PROBLEM is that i dont want to mess around finding my apps. Expose is simply too slow to use, i cannot find everything with a single click.

      On my Gnome workstation i have 11 virtual desktops, one for each server i'm maintaining, plus some for mail, comms and web. I know that by pressing CTRL + i instantly move to a desktop with all my windows positioned they way I want them. Desktop Manager does the same for me on OS X

      My problem with Expose is that I'm not trying to find ONE application, but a whole bunch. I dont want to find "Word" or "Netscape". I want to find everything "Mailserver-related", "Primary Nameserver-related" etc. Simply put, i want to find more than one window/application, expose cant do that, Desktop Manager does.

      --
      Probable impossibilities are to be preferred to improbable possibilities.
      Aristotele
    6. Re:Why it wasn't put in already by Wooky_linuxer · · Score: 2, Informative

      I use my MDK desktop in much the same way. If I boot up windows, I feel claustrophobic from the lack of space... I tried Nvidia virtual desktop like solution but is slow and buggy. I use WindowMaker, so I'm not sure it's possible in Gnome, but I found that assigning the mouse wheel for changing desktops is a snap. :)

      --
      Where is that guy who'd die defending what I had to say when I need him?
    7. Re:Why it wasn't put in already by dasmegabyte · · Score: 3, Informative

      My PROBLEM is that i dont want to mess around finding my apps. Expose is simply too slow to use, i cannot find everything with a single click.

      WHAT? THIS IS EXACTLY WHAT EXPOSE DOES -- SHOW/HIDE EVERYTHING WITH ONE CLICK.

      F7: Find all windows for one app.
      F8: Find all non-hidden, non minimized windows.
      F9: Show desktop (Pushes all windows off to the sides).

      One click for each. Hold down the button and you get mouse over selection, otherwise it's mouse click selection. You can remap the keys as is convenient (I map Expose All to the middle mouse button). And what's best -- all of your windows continue to update while Exposed. Damn useful. It means if I have Safari open full screen, and want to change the mp3 playing in iTunes in full screen, i press and hold the middle mouse button, mouse over itunes, let the button go. To get back to Safari, I do the same. This to me is the best aspects of click-to-highlight, mouse-over to highlight, virtual desktops and single desktops while utilizing existing hardware to perform new functionality.

      What you're talking about -- granularly assigning arbitrary windows to a particular desktop set across applications -- is something new that expose can't do, this I'll grant you. It's also a very specific use. Most people's jobs are task oriented, not server oriented. Therefore, it makes sense for the desktop to be task oriented, to work with EVERYTHING you're doing, rather than spaces of work. And it also makes sense that a third party application which offers you a solution for your needs would be valuable.

      But the default? I dunno about that. Most people don't want two desktops, let alone an arbitrary number of them. I *can* say that if Apple were to offer us a fourth programmable Expose button, one that would group arbitrary application windows visibility and placement, I'd definitely toy with it. But I imagine most of what I'd use that functionality for is already covered by the dashboard.

      --
      Hey freaks: now you're ju
    8. Re:Why it wasn't put in already by Jeremy+Erwin · · Score: 4, Informative

      Expose is somewhat slower if you don't have a Quartz Extreme Card. Classic apps tend to slow it down even further. On my faster mac, Quartz Extreme eliminates the annoying milliseconds of latency.

      It's rather useful, I think, when switching between mail, a web browser, and a few finder windows. It's less useful when one is trying to use multiple xterms, for say, writing a fink package. (one for constructing patches, one for writing the .info file, and one for monitoring compilations...)

    9. Re:Why it wasn't put in already by dasmegabyte · · Score: 1

      I dunno. Expose is fast enough on my wife's iBook. I color code my xterms if I have more than one open (otherwise I get lost anyway, Expose or no). Haven't used a Classic app in two years. And I can't abide fink...had WAY too much trouble getting anything to install okay. XFree86 has never worked on this machine, and after the fifth time mucking with it I realized there was nothing I could possibly want to do in XFree86 that was worth it.

      --
      Hey freaks: now you're ju
    10. Re:Why it wasn't put in already by Anonymous Coward · · Score: 0

      I assign Expose to the otherwise unused MIDDLE/wheel mouse button on my 3rd party USB mouse (supported out of the box on OS X). This makes Expose extra useful. And yes, Apple should have a 3-button mouse by now.

    11. Re:Why it wasn't put in already by mcc · · Score: 2, Informative

      Well, I don't really speak for anyone else, but I don't *want* to have to memorize 11 ctrl-keys then carefully arrange everything I open into specific virtual desktops just to manage my apps. This is why I prefer the dock+expose approach of management to something like most Linux WMs offer. The computer may not do a perfect job of managing the windows for me, but at least it's the *computer's* job to manage the windows, not mine.

    12. Re:Why it wasn't put in already by GFLPraxis · · Score: 2, Informative

      Quartz Extreme card? What's that? Maybe you mean any graphics card above 16 MB, which almost all macs have.

    13. Re:Why it wasn't put in already by peragrin · · Score: 2, Interesting

      The point is my Linux desktop takes longer to load than windows, but it also uses a karamba theme to displays today's weather on all desktops.

      The First one opens 5 different web pages in a browser full screen, in Different tabs.

      The Second one opens and checks email, loads and connects to three different IM protocols(one client) and, connects to two IRC servers

      The third one is a full screen konsole, with transparent background and no menu's or title bars.

      The Fourth screen Opens up a File manager set two two different working directories, as well as 6 Sticky notes on the side of the desktop.

      Can expose match the quick search features of all that in literally a click??? I can switch desktops, and which windows I am using with either ctrl-tab or a click on the pager.

      Just because though I have set KDE 3.2 to look like aqua, it does look and feel better than anything else.

      --
      i thought once I was found, but it was only a dream.
    14. Re:Why it wasn't put in already by Toraz+Chryx · · Score: 1

      It's not just the amount of video memory, it's the hardware featureset underlying it.

      a 32MB TNT2 wouldn't be able to do anything with Quartz Extreme... a 16MB Radeon can.

    15. Re:Why it wasn't put in already by Jeremy+Erwin · · Score: 2, Informative

      Yes. The specific extension is known as ARB_texture_non_power_of_two. This was supported by the Radeon and the GeForce cards, but not by the Rage128. This last chipset is used by my iBook. The TNT2 was not used in any Macintosh.

      By the way, Quartz Extreme can be turned off by using 8 bit colour.

    16. Re:Why it wasn't put in already by ArbitraryConstant · · Score: 4, Insightful

      WHAT? THIS IS EXACTLY WHAT EXPOSE DOES -- SHOW/HIDE EVERYTHING WITH ONE CLICK.

      What you're talking about -- granularly assigning arbitrary windows to a particular desktop set across application


      You say that's what it does... but then you go on to admit it's not what he's trying to do. We can dance around the issue all you want, but what he's saying is that Expose doesn't help him with his workloads. His workloads are what he needs to do. Sure, he's not typical, but that just means Apple's solution doesn't work for him. He exists. Get over it.

      This guy says he needs 11 desktops... that's probably dozens of windows, a lot of them are probably terminal windows, which look almost identical when they're zoomed out enough. Even with a 30" Apple Cinema Display, can you imagine how hard it would be to find the one he wants?

      The Apple way of doing things doesn't scale well past the moderately used desktop system (eg, a significant but limited number of concurrent tasks). The OS can handle it easily, but the interface can't. In cases where you can do more with a Mac, it usually means using 3rd party software like this virtual desktop thing, or falling back on stuff that's available on any UNIX machine.

      That's not a knock against Apple. They have the API for multiple desktops, and I'll bet they don't publish it just so they don't have to maintain the API eternally, and make their unit tests even bigger than they are. They have all the UNIX tools because they know sometimes people will need to fall back on something with no GUI front end. That makes everyone's life a lot easier, including mine.

      Apple gives people enough so they can sort themselves out if the shiny happy GUI isn't good enough. Learn from them.

      --
      I rarely criticize things I don't care about.
    17. Re:Why it wasn't put in already by jesboat · · Score: 1

      This post is a reply to two other comments, foo and bar

      It's true; he cannot find a window he wants with a specific event (key or mouseclick): with Expose, you need to activate it and then pick a window. Moreover, everything is shown at once, and it is difficult to locate the window in question. Terminal windows are difficult to tell apart, to top it off.

      This is a task-oriented job-- each server is a task. I use virtual desktops-- [stickies, notes, etc] [chat, email, /.] [perl code I'm writing-- a few vims, a test window, a few man-pages] [something for school (though not now)-- HTML editor, Safari window, Preview of the PDF version] [[repeat last two for a while]] [DVD] etc.

      I switch desktops when I switch projects; when I start working on my perl code again, I switch to it. "Arbitrary" new windows don't need to be assigned; they appear on my perl desktop; that's where I am. If I start a new project, I switch to a blank desktop, and then start working on it.

      Expose can be useful for the average Mac user (not Aunt Tille, who won't use >2 windows anyways), but fails for the geek-- the person who does 8 things at once, uses mainly 4-5 programs [terminal, web browser, chat [sometimes in a terminal; I use imcom often], occasional other apps]

      Apple's demos make Expose look like more than it is-- they chose (intentionally or not) scenarios that make it's F7 functionality shine; but my Javadocs, vim terminal, and compile/run terminal group together better than my vim terminal, compile/run terminal, email terminal, chat terminal, network copy, mplayer terminal, ...

      All spelling errors are the fault of data integrity erors betweeen hear and slashdot.

    18. Re:Why it wasn't put in already by jesboat · · Score: 1

      I wrote a comment in reply to two posts, this was the second.
      The reply is in another thread, please post comments there.

      The relevant text of the comment was:

      This is a task-oriented job-- each server is a task. I use virtual desktops-- [stickies, notes, etc] [chat, email, /.] [perl code I'm writing-- a few vims, a test window, a few man-pages] [something for school (though not now)-- HTML editor, Safari window, Preview of the PDF version] [[repeat last two for a while]] [DVD] etc.

      I switch desktops when I switch projects; when I start working on my perl code again, I switch to it. "Arbitrary" new windows don't need to be assigned; they appear on my perl desktop; that's where I am. If I start a new project, I switch to a blank desktop, and then start working on it.

      Expose can be useful for the average Mac user (not Aunt Tille, who won't use >2 windows anyways), but fails for the geek-- the person who does 8 things at once, uses mainly 4-5 programs [terminal, web browser, chat [sometimes in a terminal; I use imcom often], occasional other apps]

      Apple's demos make Expose look like more than it is-- they chose (intentionally or not) scenarios that make it's F7 functionality shine; but my Javadocs, vim terminal, and compile/run terminal group together better than my vim terminal, compile/run terminal, email terminal, chat terminal, network copy, mplayer terminal, ...

      All spelling errors are the fault of data integrity erors betweeen hear and slashdot.

      ---

      I should also comment that you don't have to memorize 11 ctrl-keys; just click the desktop you want to switch to in the pager on your screen. Select it from a menu-extra. Or use a keystroke, of your choice.

      Virtual desktops are powerful; you may not need them. They're not difficult, (like you seem to think), but use what works for you. (For me, that's using Expose inside one of 11 virtual desktops, though I rarely use more than 6 of them.)

    19. Re:Why it wasn't put in already by mcc · · Score: 2, Interesting

      I am rarely doing fewer than 8 things at once on my mac and have never had a problem even before Expose. The fact that the task switcher has applications rather than windows as its level of granularity, along with the fact every app does window-level tracking and accepts command-tilde for "next window", allow me to reach any window in the system immediately. The only time this becomes a problem is when I can't clearly remember whatall is open, and Expose neatly fills this gap.

      I am well familiar with how pagers work. For my purposes however the fact that the mac automatically categorizes windows based on parent application provides a far more useful and natural idiom than the somewhat more manual mechanism provided by virtual desktops.

    20. Re:Why it wasn't put in already by boaworm · · Score: 1

      This is a task-oriented job-- each server is a task.

      Nice way of putting it, thats what I tried to say but obviously didn't get through to to all readers.

      I also came to a second conclusion. Expose requires me to use the mouse to click on the window I want to activate. The mouse is SLOW and requires me to move my right hand away from the keyboard and then back again.

      --
      Probable impossibilities are to be preferred to improbable possibilities.
      Aristotele
    21. Re:Why it wasn't put in already by uohcicds · · Score: 1

      Apple could always do what M$ do: release it as an unsupported PowerToy. That way, those of us who like (or need) virtual desktops can have them and those who like the way Expose works can stay with it. It seems silly not to if the API support is there.

      Alternatively, why can't they make the API public and then let the community provide a solution?

      --
      It's not you: I'm just this horrifically socially awkward with everybody.
    22. Re:Why it wasn't put in already by clarkcox3 · · Score: 1

      Just an FYI: You can use the arrow keys. You never need take your hands away from the keyboard. I do this all the time.

      Of course, what nobody has mentioned, you can use virtual desktops and Exposé at the same time. I use virtual desktops to seperate out several different tasks, but I use Exposé for navigating within a particular virtual desktop.

      --
      There are no tiger attacks in my area and it's all because this rock I'm holding keeps the tigers away.
    23. Re:Why it wasn't put in already by dasmegabyte · · Score: 2, Interesting

      So use COMMAND-TAB (switch applications) and COMMAND-TILDE (switch windows within an application). When you can't access your virtual desktop manager, I mean. I *ALWAYS* have one hand on the mouse for doing layout and such, and I try to stay out of shell as much as possible since this isn't the stone age and I am not a caveman.

      Oh, and just so this isn't flamebait -- my own opinion of shells does not mean that yours is invalid. I bought a Mac because I like the graphical user interface. I understand a lot of people know the CLI like the back of their hand and would never THINK of writing an AppleScript to do what they can already do in Perl. But I've also seen a lot of people swear at a poorly written regular expression that would be much more understandable -- and reusable -- as a Macro in BBEdit. More options does not mean more control, it just means you need to learn more before you can obtain control.

      --
      Hey freaks: now you're ju
    24. Re:Why it wasn't put in already by ArbitraryConstant · · Score: 2, Insightful

      Apple could always do what M$ do: release it as an unsupported PowerToy. That way, those of us who like (or need) virtual desktops can have them and those who like the way Expose works can stay with it. It seems silly not to if the API support is there.

      I agree, but it's not the Apple Way to do that. Sometimes, the Apple Way leaves power users out in the cold.

      note: Expose works even with virtual desktops, it's just restricted to the windows in a workspace.

      Alternatively, why can't they make the API public and then let the community provide a solution?

      As I said, then they'd have to subject it to continual testing as other parts of the OS changed. They could put a "volatile" warning on the API, but again, that's not the Apple Way.

      Right now, if it breaks they can say "Hey, he reverse engineered our software to get that. We aren't responsible for maintaining it.".

      I'm not apologising for them. They're being idiots, but I can at least understand them, and there's a logic to it.

      --
      I rarely criticize things I don't care about.
    25. Re:Why it wasn't put in already by prockcore · · Score: 1

      It means if I have Safari open full screen, and want to change the mp3 playing in iTunes in full screen, i press and hold the middle mouse button, mouse over itunes, let the button go.

      First of all, this only works if you only work in one application at a time. If you have an editor open alongside a browser window pointed to the html you're editing, expose doesn't work. Maybe if expose supported Window Grouping.

      Second of all, if I have Firefox open full screen and want to change the mp3 playing in RhythmBox. I click the little Note icon in the top menubar, RhythmBox appears, I change the mp3, I click the icon again, it disappears, leaving me back in my current active app.

      Much quicker than your way.

  2. Good (not bad) article (interview) by Nick+of+NSTime · · Score: 3, Interesting
    I was very interested by this interview, but the guys overabundance of parentheticals was very distracting. Sometimes I wondered if the editor was adding his own remarks to the interview, since the parentheticals were italicized.

    Regardless, I found the content to be very interesting, particularly the fact that Desktop Manager is the guy's first Mac application.

    1. Re:Good (not bad) article (interview) by kfg · · Score: 1

      It doesn't read to me like the outside editor/author added remarks, but he may have insterted some here and there that were spoken in another context for conciseness.

      Obviously the parenthesis and italics were purely the work of the editing process since the article explicitly states this interview was done as a "chat," not a written response.

      It, isn't, however, clear just who did the editing, as it reads as if Mr. Wareham himself may have edited in those comments after the article was written.

      KFG

    2. Re:Good (not bad) article (interview) by Long-EZ · · Score: 5, Funny

      ...the guy's overabundance of parentheticals was very distracting

      Programmers THINK parenthetically. If you see parentheses nested three or more layers deep, you can be sure the text was authored by a code jockey. And the parentheses always match, ensuring the article will compile properly.

      If you see programmer text that occasionally uses a semicolon to mark the end of a sentence instead of a period, you can make some educated guesses about the programmer's favorite language.

      You may occasionally see crayon scribbled text with line numbers, as penned by a larva geek.

      --
      >> My ultraviolent Linux switch video.
    3. Re:Good (not bad) article (interview) by drunkenbatman · · Score: 4, Interesting

      Sometimes I wondered if the editor was adding his own remarks to the interview, since the parentheticals were italicized

      Just to clear this up, I didn't add anything to his remarks in any way, I did however format what was in parantheses in italics, simply because that's how I like to read (with something in italics being the continuation of a thought, and italics helps me jump out of it and back to the main thread). Whether or not that is the correct thing to do is something I'll have to be educated on.

      This is part of a larger series of chats I'm doing with people whose work/projects I find interesting, or topics I feel deserve some thought... and its obviously a case of a soup chef being given a piece of filet mignon and doing the best he can with it.

    4. Re:Good (not bad) article (interview) by Twirlip+of+the+Mists · · Score: 3, Informative

      Whether or not that is the correct thing to do is something I'll have to be educated on.

      It's not. Italic type is used to indicate emphasis, or to set off things like the titles of books or the names of ships. Sure, there's room for style, but just arbitrarily italicizing everything in parentheses is a great way to confuse and frustrate your readers.

      So long as I'm being all rude and bitching at you for no good reason, next time it might be cool if you went through and got rid of the "ichatisms" like "IMHO" and "WTF." Expanding those acronyms would have made the interview a lot easier on the reader. If you look at a "real" interview (if you'll pardon the expression) you'll see that the author didn't transcribe every um and ah. It's part of the writer's job to take the interviewee's words and polish them into complete sentences so the prose doesn't get in the way of the ideas.

      Okay, I'll quit being a pedantic little shit now. For the time being.

      --

      I write in my journal
    5. Re:Good (not bad) article (interview) by Anonymous Coward · · Score: 2, Funny

      If the parentheses are nested six or more layers deep, it could well have been written by a Lisp programmer.

    6. Re: Good (not bad) article (interview) by gidds · · Score: 2, Informative
      I'm with Twirlip; italics have their place (to emphasise words, titles, &c), and parentheses have their place (to set off supplementary text). You should only italicise a parenthesis if you want to emphasise it particularly in addition to setting it off from the main text; there's very rarely reason to do so.

      Nothing personal, you understand :)

      Oh, and while I'm in pedant mode, you probably meant 'sous chef' -- 'sous' being French for 'under'. A 'soup chef', if such a role exists, would be someone who only cooks soup, so would probably give you your filets mignons back uncooked, and tell you to take them to the head chef. Or the, er, sous chef...

      --

      Ceterum censeo subscriptionem esse delendam.

    7. Re:Good (not bad) article (interview) by Goaway · · Score: 0, Troll

      > If you see parentheses nested three or more layers deep, you can be sure the text was authored by a code jockey.

      What if you see the word "author" used as a verb?

    8. Re:Good (not bad) article (interview) by BorgCopyeditor · · Score: 1
      Whether or not that is the correct thing to do is something I'll have to be educated on.

      It isn't.

      Or more precisely, it isn't the common practice, so to habitual readers it's distracting and makes us wonder whether we're reading something other than a simply parenthetical remark. Just FYI.

      --
      Shop as usual. And avoid panic buying.
    9. Re:Good (not bad) article (interview) by jesboat · · Score: 2, Funny

      That prints "unphooey". (Yes, there are still unresolved issues having to do with visibility of @_. I'm ignoring that question for the moment. (But note that if we make @_ lexically scoped, those anonymous subroutines can act like closures... (Gee, is this sounding a little Lispish? (Never mind.))))
      from perlsub(1)

      Couldn't resist.

    10. Re:Good (not bad) article (interview) by zsau · · Score: 3, Informative
      It isn't. Italicisation is for
      • emphasis
      • foreign terms
      • titles of larger works (novels, for instance, but not songs).


      (On the subject, bolding is for keywords, headings &c. more than emphasis; whereas italicisation is only really noticeable when you're in the vicinity, bolding is visible pretty much anywhere on the page, drawing your attention to it. Avoid bold for emphasis.)

      ((Even more tangentially, anyone who has the capacity to use italics but still uses underlining for anything except for links will be hung, drawn and quartered when I'm ruler of the world.))
      --
      Look out!
    11. Re:Good (not bad) article (interview) by Jackdaw+Rookery · · Score: 0, Offtopic

      You are 100%, even on the killing; but you used the word 'whereas'. *shudder*

      For me it's like the Terry Pratchett quote about multiple exclamation marks, you are clearly frightening.

    12. Re:Good (not bad) article (interview) by zsau · · Score: 1

      Thankyou, I try my hardest. If there are any more ways I can frighten you through my use of language, please don't hesitate to inform me.

      --
      Look out!
    13. Re:Good (not bad) article (interview) by Anonymous Coward · · Score: 0

      Zsau, I can't believe you went to the effort of modding this offtopic.

    14. Re:Good (not bad) article (interview) by Nick+of+NSTime · · Score: 1
      What you'll often see in articles and interviews is an editor's italicized comment enclosed in brackets, like so:

      • President Bush enacted his energy policy in 1991 [
      • ed. this occurred in December] resulting in a marked effect on utility stocks.

      So, when I see italicized comments in parentheses, it automatically leads me to think that the comments are those of the editor and not the interviewee.

    15. Re:Good (not bad) article (interview) by J.Random+Hacker · · Score: 1
      I think I'll be just a little historically pedantic ;-).


      IMHO dates from long before ichat. It doesn't quite predate me, but does predate my first session at a keyboard (circa 1980). In the days of dial-up bulletin boards and USENET News via uucp, modems were slow, and those acronyms were just the thing to get the point across quickly. If you were reading usenet, you knew what they meant. Some of us old timers still use them reflexively. I find myself explaining them occasionally -- but then I point to the Jargon File, and say RTFM. (apologies, ESR, if this slashdots you...)

  3. Confused? by arieswind · · Score: 1

    I read the interview, but I couldn't find where he mentions about it becoming harder for beginner programmers.. maybe I'm just blind, but if someone could point it out for me

    1. Re:Confused? by Anonymous Coward · · Score: 0

      Maybe this will help...

      Could you elaborate on why you don't think someone coming up could learn to code in the same way, as some would say that the amount of information and code out there has never been greater as a whole?

      Because there isn't the encouragement there once was. Nowadays software makers have tried as hard as possible to hide the workings away from you and discourage fiddling. Although you can learn television maintenance by reading books on how television works generally and learning electronics, its no substitute for the amount of learning gained by getting the back off and almost killing yourself by grabbing hold of the high-tension wire :).

      This is, of course, the natural progression as computers have become more appliance-like and less machines of wonder. When cars first came out, the owners had to learn how they worked sufficiently to prime pumps, turn cranks, oil, turns, strip and otherwise maintain their machines. Now they are more reliable but you can't learn how a car works by taking it to bits any more.>

      Also, although there is a lot of material, modern computers are too sophisticated when it comes to getting you hooked. With the old home computers one could get instant gratification by writing a program which drew a space-ship on the screen in 10 lines of BASIC. Nowadays you'd have to learn COM + Win32 + DirectX just to get a black rectangle. The 'activation energy' required for kids to get exciting things on the screen has increased exponentially over the past decade. The lack of home-programming magazines is also a problem although some the the Linux magazines here in the UK are starting to carry beginner's programming articles again.

      Finally no machines come with BASIC + a programming manual in the box any more. When I was a kid programming was Just What You Did(TM) with a computer since commercial software was thin on the ground. I guess what I mean to say is that today's computer landscape doesn't encourage hackers like it once did.

    2. Re:Confused? by Anonymous Coward · · Score: 0

      Because there isn't the encouragement there once was. Nowadays software makers have tried as hard as possible to hide the workings away from you and discourage fiddling. Although you can learn television maintenance by reading books on how television works generally and learning electronics, its no substitute for the amount of learning gained by getting the back off and almost killing yourself by grabbing hold of the high-tension wire :).

      This is, of course, the natural progression as computers have become more appliance-like and less machines of wonder. When cars first came out, the owners had to learn how they worked sufficiently to prime pumps, turn cranks, oil, turns, strip and otherwise maintain their machines. Now they are more reliable but you can't learn how a car works by taking it to bits any more.

      Also, although there is a lot of material, modern computers are too sophisticated when it comes to getting you hooked. With the old home computers one could get instant gratification by writing a program which drew a space-ship on the screen in 10 lines of BASIC. Nowadays you'd have to learn COM + Win32 + DirectX just to get a black rectangle. The 'activation energy' required for kids to get exciting things on the screen has increased exponentially over the past decade. The lack of home-programming magazines is also a problem although some the the Linux magazines here in the UK are starting to carry beginner's programming articles again.

      Finally no machines come with BASIC + a programming manual in the box any more. When I was a kid programming was Just What You Did(TM) with a computer since commercial software was thin on the ground. I guess what I mean to say is that today's computer landscape doesn't encourage hackers like it once did.

    3. Re:Confused? by Anonymous Coward · · Score: 0

      Copycat...

  4. For a second (no pun intended) there... by Anonymous Coward · · Score: 5, Funny

    I thought this was going to be an article about overclocking your wristwatch.

    1. Re:For a second (no pun intended) there... by happyfrogcow · · Score: 1

      I thought this was going to be an article about overclocking your wristwatch.

      but if you did, how would you know how much faster it is? at best, you'll end up with a broken watch because then it means you have to do something different next time to succeed, ie, you'v elearned something. At worst, you've tried and been unable to conclude that your watch is faster (thus wasting time!), since measuring your watches speed with your overclocked watch would show it's as fast as before but no faster.

      in summation, overclocking watches should be left as a theoretical study of hamsters in spacesuits.

    2. Re:For a second (no pun intended) there... by Anonymous Coward · · Score: 0

      I thought this was going to be an article about overclocking your wristwatch.

      The preferred term is overwatching...

    3. Re:For a second (no pun intended) there... by Anonymous Coward · · Score: 0

      Timex: Takes a hacking and keeps on... uh.. I'm stumped.

  5. Somewhere in the middle by SuperKendall · · Score: 4, Informative

    It was a short section in the middle - to summarize:

    "The level of effort is much harder now for a kid to get into programming - PC's used to ship with Basic manuals and you could write code to draw a spaceship in ten lines of code, but now you have to learn the Win32 API + Directx to get a black triangle on the screen."

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Somewhere in the middle by cjwl · · Score: 5, Informative

      Perhaps he should sit down and try Cocoa out while he's using OS X. ProjectBuilder/Xcode can generate a skeletel application that runs w/ no code. Interface Builder will generate code for your view, you fill in the drawing code. It's pretty damn easy and there are a lot of tutorials.

      I think it is far easier for young people to get started these days and they have access to far more powerful tools and OS than the beginners of the past. I didn't get a Unix machine (NeXT) until I was 20, we have 5 year olds using it on a Mac now. The barrier to entry is far lower now than it ever was and it will continue to be.

      The real problem is that there are far more people who know programming that you have to compete against for jobs...

    2. Re:Somewhere in the middle by larkost · · Score: 3, Interesting

      While it has become harder to draw a black triangle on the screen programatically, it has become fire simpler to use an IDE to make a window that has a black triangle on it, and then draws "hello world" and asks you for your name, all well within ten lines of code (and 3 minutes of work).

      With XCode and InterfaceBuilder (the IDE tools that ship with MacOS X) I can whip up a text editor with support for rich text (fonts, formatting, colors, embedded images, etc) in under 20 lines of code (half of which are written for me), and a few minutes.

      I would say that it has become far easier to get complex things done in programming, and for a lot of tasks the entry level has gone down, but of course our expectations have increased enormously.

    3. Re:Somewhere in the middle by Anonymous Coward · · Score: 0

      Quite right, you can build a web browser, with an address field and back and forward buttons with zero lines of code.

      Of course its the glue code that makes it useful.

    4. Re:Somewhere in the middle by bfields · · Score: 4, Insightful
      The real problem is that there are far more people who know programming that you have to compete against for jobs...

      I don't know, it may be that the market for "programmers" is poor, but that doesn't mean there isn't a need for a higher level of computer literacy in the general population. If you're someone in another specialty (e.g., you're mainly a biologist) and have some programming skills, then there's probably a lot of people that will be very happy to have you around.

      think it is far easier for young people to get started these days and they have access to far more powerful tools and OS than the beginners of the past. I didn't get a Unix machine (NeXT) until I was 20, we have 5 year olds using it on a Mac now. The barrier to entry is far lower now than it ever was and it will continue to be.

      That's all true, it's amazing that these days you can get such high-powered hardware so cheaply, and run entire operating systems entirely from code that you can tinker with.

      On the other hand, even the lowest-end machine has so many other distractions on it now--games, email, etc. The basic interpreter was sometimes the only fun thing that came with the cheap home computers of the 80's--the only way to get a game might be to spend money on a cartridge or type one in from a magazine--whereas now you have to dig a little and look up documentation elsewhere to find a programming environment for your new PC.

      --Bruce Fields

    5. Re:Somewhere in the middle by Mike+deVice · · Score: 2, Insightful
      To do the really nifty stuff has never been easy out of the box. Sure, you could throw a sprite up on the screen in BASIC on the C=64, but to do something really neat you had to learn 6502 assembly.

      My first home machine was a TI-99/4a bought for me by my parents. It didn't take too long for me to get tired of my little "space shuttle" dodging blocks, and I wanted to do more. That meant getting and learning extra stuff, whether it meant the Extended Basic module or getting the expansion box so I could use C or Pascal.

      Ah, memories.

    6. Re:Somewhere in the middle by TomorrowPlusX · · Score: 2, Insightful

      But consider, ( at least in the case of my old DOS VGA graphics ) accidently writing outside the video buffer would bring the computer down. Completely. As in hard-reset.

      Nowadays, the OS just brings up a dialog saying "blech! crashed!" or something.

      It's a fair trade.

      If you want easy prgramming today, you might have to go through a shell of some sort. Squeak might fit the bill [ http://www.squeak.org/ ].

      The point is, modern systems are *robust* and as such, there's a higher point of entry. Nothing to see here. Move on.

      --

      lorem ipsum, dolor sit amet
    7. Re:Somewhere in the middle by forevermore · · Score: 1
      "PC's used to ship with Basic ... but now you have to learn the Win32 API + Directx"

      Basic is essentially a scripting language; now we have other scripting languages like VB (not free), perl, php, python (all free) and many others. All of the free ones run in windows and linux and osx. They may not come preinstalled in windows or osx (well, OSX comes with perl), but they're pretty easy to grab and install, and make a great starting platform for new programmers. Interpreted (or pseudo-interpreted) language means no waiting for things to compile, either, so there is a good level of instant gratification.

      --
      Do you really need reason for beer? Wingman Brewers
    8. Re:Somewhere in the middle by dasmegabyte · · Score: 1
      This hasn't become harder. It's become harder to do HYPEREFFICIENTLY. But the .NET Framework exposes most of the Win32 API with an awesome toolkit which is fast enough for kids' work. Here's C# code for drawing a triangle:
      using System.Drawing;
      using System.Windows.Forms;

      public class Triangle : Form {
      public Triangle(){
      this.Paint += new PaintEventHandler(painttriangle);
      }

      private void painttriangle(object sender, PaintEventArgs pe){
      pe.Graphics.DrawLine(Pens.Black,0,0,0,10);
      pe.Graphics.DrawLine(Pens.Black,0,10,5,0);
      pe.Graphics.DrawLine(Pens.Black,5,0,0,0);
      }
      public static void Main(){
      Application.Run(new Triangle());
      }
      }
      17 lines, 8 of which are whitespace or brackets. A bit more complex than BASIC, maybe, but not "learning the whole Win32 API + DirectX". I think it makes a bit more sense than graphics did in my BASIC days...and being able to DrawImage with a filename is cool, too.

      Java also makes it very, very easy to access graphics (and in a cross platform manner as well). But I don't have a Java compiler in front of me ;).
      --
      Hey freaks: now you're ju
    9. Re:Somewhere in the middle by tonywestonuk · · Score: 1

      Ok, This isn't event driven, or 'OO', but, I'd imagine , this would be the first adventure into triangle programming in Java.

      import java.awt.Graphics;
      import javax.swing.JFrame;

      public class Triangle {
      public static void main(String[] args) {
      JFrame w = new JFrame();
      w.setSize(100,100);
      w.show();
      Graphics arg0 = w.getGraphics();
      arg0.drawLine(0,50,100,100);
      arg0.drawLine(100,100,100,30);
      arg0.drawLine(100,30,0,50);
      }
      }

    10. Re:Somewhere in the middle by jcr · · Score: 1
      That's rather interesting, to see that the graphics model doesn't seem to have any implicit current coordinate. In Cocoa, we would use the NSBezierPath class, which follows the Postscript/PDF/SVG approach of building a path, which is then stroked or filled.

      Even for such a simple example, I would typically add a general-purpose method to the NSBezierPath class:
      @implementation NSBezierPath (pathWithPoints)

      + (NSBezierPath *) pathWithPoints:(NSPoint *) points count:(int) numPoints
      {
      int index = 0;

      NSBezierPath *newPath = [self bezierPath];
      [newPath moveToPoint:points[index]];
      while (++index < numPoints)
      [newPath lineToPoint:points[index]];
      [newPath closePath];
      return newPath;
      }

      @end
      and then invoke this new method in my view's drawing code like so:
      @implementation TriangleView

      - (void) drawRect:(NSRect) rect
      {
      NSPoint trianglePoints[3] = {{0, 10},{50, 0},{0, 0}};
      [[NSColor whiteColor] set];
      NSRectFill(rect);
      [[NSColor blueColor] set];
      [[NSBezierPath pathWithPoints:trianglePoints count:3] stroke];
      }

      @end
      -jcr
      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
  6. Virtual desktops by mst76 · · Score: 2, Insightful

    I don't really understand why Apple doesn't offer them. I've hears several reasons: the dock, expose, tranparent windows, or whatever makes them unnecessary, they're confusing for new users, etc, etc. But none of these addres the fact that Aqua WITH optionally selectable virtual windows (selectable for the "advanced user") is BETTER than WITHOUT. You can make all the same arguments for the presence of Terminal: it's unnecessary and confusing for the majority of users, but I bet few Mac users would want Apple to leave it out.

    1. Re:Virtual desktops by Anonymous Coward · · Score: 2, Insightful

      But none of these addres the fact that [APPLE TECHNOLOGY] optionally selectable [FEATURE] (selectable for the "advanced user") is BETTER than WITHOUT

      If you are going to be an Apple customer you will have to let go of this idea. Apple simply does not add a lot of doo-dad features because a few nerds would like them.

      Try this attitude instead:

      [FEATURE] is bad, even if it's optional, because most people don't need it. It's just a kludge because Windows/Linux/DOS/Amigas is inferior to Macs. [APPLE TECHNOLOGY] was wholey perfectly designed from the beginning

    2. Re:Virtual desktops by Kenja · · Score: 3, Insightful

      Apple is of the opinion that two buttons on a mouse is overwhelming. Do you realy expect them to think that we the consuming masses can handle more then one desktop?

      --

      "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
    3. Re:Virtual desktops by bhorling · · Score: 1
      Clearly they haven't made such a utility because it would cut into their display sales. Why would you need a 30" LCD screen when you could get a zillion virtual displays for free?

      /joke

    4. Re:Virtual desktops by Anonymous Coward · · Score: 0

      The situation is quite different. It's pretty hard to make a two or three button mouse that looks like a one button mouse. Software options can be tucked away in a "advanced" control panel, with a good written explanation.

    5. Re:Virtual desktops by nine-times · · Score: 5, Insightful
      ' I don't really understand why Apple doesn't offer them. I've hears several reasons: the dock, expose, tranparent windows, or whatever makes them unnecessary, they're confusing for new users, etc, etc. But none of these addres the fact that Aqua WITH optionally selectable virtual windows (selectable for the "advanced user") is BETTER than WITHOUT. You can make all the same arguments for the presence of Terminal: it's unnecessary and confusing for the majority of users, but I bet few Mac users would want Apple to leave it out.'

      There's a weird Apple mentality at work here. I'm not Apple bashing, it's just that the reasons are ones that most on /. won't really identify with.

      Apple likes to control their product; they don't want the interface very customizable. They'll allow little tweaks, and they'll allow people to make 3rd party products that can do... whatever. But this is the issue from the point of view of Apple: look around at linux desktops. Heck, just find some screenshots online somewhere- they all look different. Both KDE and Gnome are very customizable. Great. But a lot of users are going to find it confusing. Here's an example:

      If I tell you I'm running Linux with a gui, and I want to reboot, can you tell me, without looking over my shoulder, where, spacially, on my interface, I need to go? Even if I tell you "I'm using Gnome" or "I'm using KDE", can you then tell me where the 'Log-out' or 'Reboot' button is? No- because it's very customizable, any button could be anywhere.

      This means that the user's understanding of where things are and how the interface operates is not necessarily portable from one installation of Linux to another, even if you're using the same window manager on the same distribution. So what you need to understand about Apple's design philosophy is this: they don't like that. They want it so, if you're using their software, with no complicated tweaks or 3rd party hacks, everything will look pretty much the same, act pretty much the same, and be in pretty much the same place.

      Virtual desktops would be fine with Apple, if they liked virtual desktops enough to use it with the standard interface, but they don't. It's not that they mind virtual desktops, but Apple doesn't want to add in extra options that will change the interface and confuse many users, unless it's necessary. They'd rather, instead, come up with another interface design feature that, they believe, will be as powerful as virtual desktops, but less confusing to users (like Expose). And if you want virtual desktops, their are 3rd party implimentations available.

      So, there's your difference between the Terminal and Virtual desktops. One is an application (of sorts) than can be run within the current standard Apple interface (Terminal), and the other actually changes the behavior of and the user interaction with the interface.

    6. Re:Virtual desktops by foidulus · · Score: 1

      The amazing thing is you managed to contradict your own point. If I am using apple technology that means that I,*gasp* chose apple technology to begin with. IE I liked what Apple puts out. Nobody forced me to do it, just like nobody is forcing you to use Apple, Windows, Linux, BeOS etc. If you don't like the lack of choice on Apple's platform, then DON'T USE APPLE'S PLATFORM!! The people that do made the *choice* to do so, so please stop bitching about a lack of choices on Apple. Those of us that use it already had a choice, and we made it on our own.

    7. Re:Virtual desktops by 1010011010 · · Score: 1


      Sure. They think we can handle multiple monitors. They could use that as an excuse to have a "multiple monitor manager" -- with a menu bar at the top of each window. Then, an advanced option to enable "virtual monitors." Ta-da, multiple desktops.

      --
      Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
    8. Re:Virtual desktops by Twirlip+of+the+Mists · · Score: 1

      I don't really understand why Apple doesn't offer them.

      It's not that hard. I don't understand why you don't get it.

      More of Apple's customers want other things.

      The other comments about Apple's design philosophy and all that... those are well and good. But the bottom line is that more of Apple's customers and potential customers want other features than want desktop-switching.

      It's a real simple business decision. When a small number of people want a feature that few others will use, those people have to wait in line or go without, or find their solution elsewhere.

      --

      I write in my journal
    9. Re:Virtual desktops by sloth+jr · · Score: 1
      Apple is of the opinion that two buttons on a mouse is overwhelming.

      Two buttons on a mouse is overwhelming (I would have said confusing), initially: ever watch someone who first handles a mouse? It takes a while for the "right-click/middle-click/left-click" thing to register.

      Of course, it's a PITA for the rest of us, but that's easily resolved by $10 at Staples - MacOS X supports multi-button mice very well.

      sloth jr

    10. Re:Virtual desktops by po8 · · Score: 1

      If I tell you I'm running Linux with a gui, and I want to reboot, can you tell me, without looking over my shoulder, where, spacially, on my interface, I need to go? Even if I tell you "I'm using Gnome" or "I'm using KDE", can you then tell me where the 'Log-out' or 'Reboot' button is? No- because it's very customizable, any button could be anywhere.

      <CTRL-ALT-F1><CTRL-ALT-DEL> will almost always get it. But I agree that that's somewhat beside the point. :-)

    11. Re:Virtual desktops by Luscious868 · · Score: 0, Troll
      Guess what?
      Fuck you. Fuck your opinion. Fuck what you think you know.

      Roses are red,
      Violets are blue,
      I fucked your mom in the ass, and then she had you!

    12. Re:Virtual desktops by DMUTPeregrine · · Score: 1

      I always laugh at that one (the two buttons.) My mouse has 5 buttons, 2 scroll wheels. I've tried mac mice, they are very very difficult to use. What I could previously do with one hand while taking a drink, eating, whatever, I now either need two or I need to move the mouse. It's inconvineient. Personally I want 5 more buttons: change the thumb button into a rocker switch (3 positions: forward, back, press in) and add a second rocker on the thumb position. Also, make the second scroll wheel have a button. You hearing this A4Tech? Though, I am a gamer...

      --
      Not a sentence!
    13. Re:Virtual desktops by Ilgaz · · Score: 1

      I use mouse since my first Amiga 500 and before, a GEM at a C64 friend... So, I know how to use mouse ;)

      IMHO single button , triple click, long click is much more comfortable. Why I installed my Logitech 3 button mouse? One word: Games...

      I'd go with that pro mouse apple provided with my g5...

    14. Re:Virtual desktops by dekeji · · Score: 1

      But this is the issue from the point of view of Apple: look around at linux desktops. Heck, just find some screenshots online somewhere- they all look different. Both KDE and Gnome are very customizable. Great. But a lot of users are going to find it confusing. Here's an example:

      That's just a bad analogy. Linux is a kernel. It corresponds to Darwin in the Mac world. Both Linux and Darwin support many GUIs. People don't say that "Darwin desktops are inconsistent" either.

      Mac OS is a single OS distribution from a single vendor with a single choice of GUI and desktop desktop. Of course, it's going to be consistent. That's no great achievement--Apple would have to be schizophrenic for it not to be. Its analog is something like SuSE or Fedora.

      Apple also happens to make their systems not very customizable. Some desktops that happen to be based on Linux make the same choice, others don't. I think the jury is still out on what is better in the long term.

    15. Re:Virtual desktops by nine-times · · Score: 1
      'That's just a bad analogy. Linux is a kernel.... [OS X's] analog is something like SuSE or Fedora.'

      Oh crap. You're one of those guys who waits around Slashdot for a Linux/GNULinux argument, aren't you?

      OK, let's look at your 'analog' of a Linux-based OS, which, incidently, is what I meant in the first place. Let's look at SuSE (it would be the same if we pick Fedora, Mandrake, Gentoo, or pretty much any distro). From the packaged SuSE install, you can certainly install both KDE and Gnome. I'm not sure what else is in SuSE's install program, but perhaps Enlightenment of Xfce is in there too? OK, it makes not difference, lets just assume KDE and Gnome, and no software installed that doesn't come straight off the SuSE CDs. Now, Let's say I'm sitting at a machine, not my own, where someone is running Gnome, and has moved all the panels around and customized the menus and everything to get it just the way he wants it. I'm used to this persons arrangement, and am comfortable using it. I stand up, walk to another person's machine, who has an identical SuSE installation, but this guy's running KDE. He also has customized it heavily to his own tastes.

      Do you have any idea how different these two people's DE could be? How much a user might have to adjust to the interface? Yet, these are identical installs, with nothing but what comes from SuSE.

      While 'power users' may appreciate the level of customizability available, out-of-the-box, from most Linux distros, it is out-of-step with Apple's design philosophy. And I don't think the jury is 'still out' on what is 'better in the long term'. The 'the more options the better' view is certainly better for those who want immense control over their interface and have to time to deal with it. The 'Do it one way, but do that one way well' view is certainly better for Apple's target audience.

    16. Re:Virtual desktops by aldoman · · Score: 1

      No sorry, you are totally wrong. If you look at how someones handles a mouse for the first time, the first problem is controlling it. It takes a good week or two of practice before you are quite good at using the thing to move from one side to another without undershooting and stuff

      The mice buttons are really easy. Left for everything, right for special. If you tell them that they don't have any problems. Personally, I think Apple screwed up on that one. Also, scroll mice are so much better for newbies. Most newbies just hit the little down arrow loads of times (then realize you can click in empty space or drag the bar up and down). With a scroll mouse it's just a lot easier - your hand movements directly do what you want them to do on screen. No clicking or dragging, either.

    17. Re:Virtual desktops by Anonymous Coward · · Score: 0

      However, most Windows users don't know how to use anything other than the left mouse button, either. Given things like Shift-click on both platforms, it just seems easier to teach someone to use Control-click (the equivalent of Right-click on a Mac) on a one-button mouse than to use two mouse buttons (and explain that Shift-Right-click doesn't actually do anything special). Apple uses several modifier keys for: Shift, Option, Control, Command, and various combinations thereof. Control-click, to me, just doesn't seem any more difficult to use than Right-click.

      Given all that, I use a Logitech scroll-wheel mouse, even though the Apple mouse is so nice to look at. Primarily, I'd miss the scroll wheel - but I use Right-click all the time since I have it.

    18. Re:Virtual desktops by dekeji · · Score: 1

      I'm used to this persons arrangement, and am comfortable using it. I stand up, walk to another person's machine, who has an identical SuSE installation, but this guy's running KDE. He also has customized it heavily to his own tastes.

      When a Windows or UNIX user walks over to a Mac, the Mac is completely inconsistent with what they are used to, and, worse yet, there is no easy way to make the Mac work like what they are used to.

      On the other hand, not only are (say) SuSE setups consistent out of the box (if you walk over to a SuSE machine and log in, you get the same default desktop you get on any other SuSE machine), if you come from a different platform, it takes only a few clicks to make it look and feel close to what you are used to.

      The 'the more options the better' view is certainly better for those who want immense control over their interface and have to time to deal with it.

      You just don't get it, do you? Those options aren't there because of some geeky obsession with features, they are there to let people with many diverse backgrounds feel comfortable using the same software platform.

      KDE and Gnome say "we'll adapt to what you are used to to make things easy for you", while the Mac UI says "we know everything better, so we don't give a damn if you come from a different background and don't like it".

      The 'Do it one way, but do that one way well' view is certainly better for Apple's target audience.

      And that's fine, for Apple. Apple has captured a few percent of the market that happens to like its particular choices or at least doesn't mind them too much. Just don't present that as the answer for everybody else.

    19. Re:Virtual desktops by nine-times · · Score: 1
      'When a Windows or UNIX user walks over to a Mac, the Mac is completely inconsistent with what they are used to...'

      All I said was that Apple likes to keep its own interface consistant, which is in contrast to the Linux DEs available, which tend to give users much more options. Is that not true? Is Mac OSX not going to be more consistant from one installation to another than SuSE? I never intended to imply that they were going to use the same interface as SuSE- but it would be a bit silly to demand that, now wouldn't it?

      '...and, worse yet, there is no easy way to make the Mac work like what they are used to.'

      But this was my point in the first place- which is what I said many /.'ers wouldn't identify with: Apple has, long ago, decided that, in some cases, it's better to go ahead and choose (or invent) a good all-around solution for their users than to confuse their users with choices that many of them don't care about. Take the Aqua theme as an example. Apple doesn't even give you the ability to change themes. But, then again, they come up with a theme good enough that many Linux and Windows users want to copy it.

      '"The 'the more options the better' view is certainly better for those who want immense control over their interface and have to time to deal with it."

      You just don't get it, do you? Those options aren't there because of some geeky obsession with features, they are there to let people with many diverse backgrounds feel comfortable using the same software platform.'

      Does this 'letting people with diverse backgrounds feel comfortable using the same platform' make it take less time to customize my desktop? Understand, I use Gentoo, and I know about spending a lot of time to get a system just the way you want it. But many users, who don't have the time or the wherewithall, or perhaps they just don't care enough, will just use the default setup of whatever system they sit down at. And I'm a helpdesk manager, and I know that many users don't understand what they're doing terrifically, and they memorize "ok, I go up, I click on the little 'computer' picture, and then I go down to this other thing..." and if you move any of it, they're lost.

      I think you don't 'get' the degree to which most users don't care. There are so many users out there that just want to use their computer as it is when it comes out of the box. They'll ask "where do I go to turn it off?" and if you say "you can put an icon that will shut down anywhere you like!" they'll say "I don't care. Where do I go to turn it off?" They want to be told "Click here." and they want to know that, whatever the circumstances, clicking there will turn it off. Apple wants these people to feel comfortable with OSX. Are you starting to get it, or am I typing too fast?

      'Just don't present that as the answer for everybody else.'

      I didn't think I had claimed that Apple's interface was "the one true way" or anything of the sort. I run Gentoo (dual boot with Windows, actually) on one machine and OSX on my laptop. I was saying that each approach ('choices, choices, choices' vs. 'we think this is the best solution, so just use it and don't screw with it') has it's strong points and drawbacks. Also, each approach, to some extent, has a 'target audience'. I, myself, find that I enjoyed tweaking my Linux system to get it just right, but I also recognize that it has taken me some time to get it that way. My powerbook, on the other hand- once I got used to it, I came to appreciate how nice it is without tweaks of any kind. The system ends up being pure productivity- no screwing around with it involved. And I see the benefit of that, too.

      If anything, I was concerned that attributing the lack of virtual desktops to 'Apple design philosophy' would sound like Apple-bashing. After all, it's the same 'design philosophy' that keeps Apple selling the infamous 1-button mice.

    20. Re:Virtual desktops by oliverk · · Score: 1

      Humorously, I just installed Desktop Manager (very cool btw) and had to hook up my laptop to a projector for a quick presentation. Not only did I get multiple monitors through spanning (not mirroring) but I had another four desktops through Desktop Manager. 4x2=8=maybe a little difficult to remember where everything goes.

      Of course, I've just posted this message in one of six tabs, in one of two Safari windows, in one of four desktops, on one of two displays, using one of three users... No, really :)

      --
      ---- Please be nice in case my Slashdot karma ~= my real life karma.
    21. Re:Virtual desktops by dekeji · · Score: 1

      All I said was that Apple likes to keep its own interface consistant,

      You also implied that the Linux GUI lacked such consistency, and that kind of statement just doesn't make sense because you are comparing apples and oranges.

      Does this 'letting people with diverse backgrounds feel comfortable using the same platform' make it take less time to customize my desktop?

      You don't have to spend any time to configure your desktop--you can just run whatever default your distribution comes with, just like you would on MacOS.

      Furthermore, KDE customization is really easy: you pick whether you want a Windows, CDE, or Mac-like desktop when you log in for the first time--that takes a few seconds, and saves you hours in getting used to unfamiliar defaults.

      I was saying that each approach ('choices, choices, choices' vs. 'we think this is the best solution, so just use it and don't screw with it') has it's strong points and drawbacks.

      And I'm saying that I think Apple's supposed "strong point" is mostly a marketing construct based on some arbitrary notion of what you choose to look at. Yes, up-to-date, uncustomized Macs are consistent with one another, but so are uncustomized SuSE distributions. Beyond that, Macs are consistent with nothing else, and users can customize them as much as any other platform if they really want to.

      I think you don't 'get' the degree to which most users don't care. There are so many users out there that just want to use their computer as it is when it comes out of the box. They'll ask "where do I go to turn it off?" and if you say "you can put an icon that will shut down anywhere you like!" they'll say "I don't care. Where do I go to turn it off?" They want to be told "Click here." and they want to know that, whatever the circumstances, clicking there will turn it off. Apple wants these people to feel comfortable with OSX. Are you starting to get it, or am I typing too fast?

      Oh, and you think that Gnome, KDE, or Microsoft don't want that? And do you really think that the usability engineers working on Gnome, KDE, or Windows are any less smart than those working on Mac OS?

      Portraying Gnome and KDE as some sort of hacker GUIs is a marketing myth, a last ditch attempt by people invested in Windows and MacOS to differentiate themselves from OSS GUI software. But in reality, Gnome and KDE are disgustingly mainstream when it comes to GUIs; their features and customizability are driven by the desire to make the same kinds of customers happy that are happy with Windows and MacOS, and they are succeeding. I actually wish it weren't so.

      But, hey, if you actually have some sound, recent data actually demonstrating an overall usability advantage of MacOS over Windows, Gnome, and KDE, why don't you share it?

    22. Re:Virtual desktops by Lars+T. · · Score: 1

      Very good points. In addition to that, right-clicking on the computers at work is so damn slow because the anti-virus software does some checks on the content of the menu. I wish the mice there didn't have a right button so my workflow wouldn't be interrupted for three seconds each time I accidently clicked it anyways.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    23. Re:Virtual desktops by nine-times · · Score: 1

      'You also implied that the Linux GUI lacked such consistency'

      Linux is a kernel, and has no GUI. Many of the DEs available for Linux (including the major ones), while they may have consistancy within themselves, are not consistant from one install of the DE to another install of the same DE. ...because they're pretty customizable.

      'You don't have to spend any time to configure your desktop--you can just run whatever default your distribution comes with, just like you would on MacOS.'

      Ah, yes, but then you aren't taking advantage of the customizability. This puts you in the wonderful position of A)Not having the benefit of a customized desktop (which is the same situation you have when you pull a Mac out of the box), and B)Still probably not having a consistant interface with other users of the same DE (who have probably customized theirs).

      'Up-to-date, uncustomized Macs are consistent with one another'

      More than that, and this is my point- running Mac OSX, any version, will be very consistant, providing you don't install any 3rd party software that was designed to alter the UI. What you can customize with only Apple software is very minimal, and even 3rd party products usually amount to theming or re-using Apple's included design elements, so it will still be pretty consistant with all other OSX installations.

      As for the rest of your post, you sound like a man fighting a battle with no one on the other side. You're making arguments against statements that I didn't make, and, frankly, not seeming to read what I write. Do you just have all these things you want to get off your chest?

      I don't think I said the Gnome or KDE or Windows GUIs stink or anything. My point was that there are different approaches to interface design (which, incidently, I've done that as a job, too). That Apple and Gnome/KDE use different approaches says nothing about their relative 'goodness'. I'll say this one last time, and if you don't get it, I'm going to drop the whole thing and not talk to you again. You can, on the one hand, aim for maximum customizability, adding as many options as possible, or, on the other hand, aim for maximum consistancy, always picking what you believe is the best option available, and not giving the user any option. Each approach has it's benefits and drawbacks. Greater customization of the same DE on two desktops will make the two customized versions less consistant with each other, but taking away the ability to customize... well, it makes it so you can't customize things to your liking. So, if you have users who will just want to memorize the GUI they're given, and not change it, for THEM, consistancy is much better. People who want their UI how they want it, period, will always want more customizability.

      The Linux community tends to lean towards the customizability, while Apple developers lean towards consistancy. And you can see the benefits and drawbacks in each product, insofar as they pursue one or the other. NEITHER pursues either full customizability or total consistancy absolutely. However, the exclusion of an option for virtual desktops in MacOSX is not an oversight; it is a symptom of Apple's interface design decision to limit user options.

      This was my original point. Someone asked 'why not give the option of virtual desktops' and I said 'it's a design decision.' and went on to explain why, within Apple's approach to UI design, the option for virtual desktops doesn't make sense. That is all. If you want to make this into a "OSX sucks! No Linux sucks!" argument, I think you've picked the wrong guy.

      'Portraying Gnome and KDE as some sort of hacker GUIs is...a last ditch attempt by people invested in Windows and MacOS... [Do you have] recent data actually demonstrating an overall usability advantage of MacOS'

      Last ditch attempt?! Recent data?! LOL. Wait, are you one of them 'funny' trolls?

    24. Re:Virtual desktops by dekeji · · Score: 1

      My point was that there are different approaches to interface design (which, incidently, I've done that as a job, too). [...] So, if you have users who will just want to memorize the GUI they're given, and not change it, for THEM, consistancy is much better. People who want their UI how they want it, period, will always want more customizability.

      And my point is that that is just a wrong conceptualization of what is going on. You think of customizability and consistency as tradeoffs, and I'm saying that that makes no sense.

      On the customizability front, if you want a consistent UI on your Windows or SuSE machine, you just use the defaults: you get exactly the same look and feel for your OS no matter what machine you use it on. And that's what the vast majority of users on every platform do anyway: they stick with the defaults. And therefore, even if you walk over to your colleague's Windows or SuSE machine, you'll almost certainly get the same Windows or SuSE desktop you get on your own machine.

      On the other hand, if Apple really cared about making life easy for migratory users, they'd make their UI consistent with Windows because that's the most likely situation someone who "walks over" to another machine is going to be in. But, in fact, Apple goes out of their way to make their machines look and feel different from what people are used to. Apple's oddball UIs are about branding: they want their machines to have a recognizably different look. It creates brand loyalty. It's like the ignition key on Saabs or Porsches. It doesn't matter whether the Mac is better (you yourself said that Windows is perfectly usable), it matters that it is different.

  7. Desktop Manager is Amazing by pyite · · Score: 5, Informative

    I really have to say that Desktop Manager is amazing. It even has eye candy transforms between desktops (such as the sides of a cube representation of things). And to boot, Rich emailed me back some time ago when I had a question.

    --

    "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

    1. Re:Desktop Manager is Amazing by rjstanford · · Score: 4, Insightful
      I really have to say that Desktop Manager is amazing. It even has eye candy transforms between desktops (such as the sides of a cube representation of things).

      Good ... but not exactly amazing ... from TFA:

      Q:[Y]our app feels faster than any of the competing apps out there by an order of magnitude, even though you arguably throw a hell of a lot more eye candy in there and you've recently made it even faster. Where is this speed coming from?

      A:Apple :). The actual 'switching' is performed by calling the secret API functions above. This is actually implemented in the Window Manager and hence is as fast as if I could delve in there myself and manipulate them 'by hand'. The transitions eye-candy in later releases is actually using Apple's own code.
      Does that mean that it's good code? Absolutely. But not startlingly good code, since most of the heavy lifting was done by the OS itself (Apple uses similar transitions for switching between multiple users, for example - which would lead me to belive that had Apple done this they would have used something visually distinctive for the desktop switch, come to think of it).
      --
      You're special forces then? That's great! I just love your olympics!
    2. Re:Desktop Manager is Amazing by pyite · · Score: 1

      I had no doubt that he was using Apple's API to carry out the eye candy even before I read the article. The point is that Desktop Manager really goes beyond being utilitarian and does the job probably just how Apple would do it if they so chose.

      --

      "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

    3. Re:Desktop Manager is Amazing by hunterx11 · · Score: 3, Interesting

      I would be more concerned about the fact that "secret" code is subject to change without notice. Objective-C doesn't support private methods, but leaving prototypes out of the header file makes it "pseudo-private." Aqua does have a few other unimplemented capabilities, like theoretical support for tear-off menus. Then again, we might see things like this in the future--it used to be that changing key bindings for menu items at runtime was partially coded but unsupported, but it was added as a feature to Panther.

      --
      English is easier said than done.
    4. Re:Desktop Manager is Amazing by bnenning · · Score: 4, Informative

      Aqua does have a few other unimplemented capabilities, like theoretical support for tear-off menus.

      Not theoretical.

      --
      How to solve most of our problems: 1.Lots of nuclear plants. 2.Cure aging.
    5. Re:Desktop Manager is Amazing by shawnce · · Score: 1

      He better be ready, as will everyone else, to accept the fact that Apple is likely toying with providing this functionality in a future OS release (likely why the prototype/private API exists that he is using) so when they come out with it folks better not bitch about Apple ripping anything off.

    6. Re:Desktop Manager is Amazing by pyite · · Score: 1

      The only people who bitch about this sort of thing are the ones who aren't used to open source. Example: Konfabulator people bitching about Apple stealing their new Dashboard concept from Konfabulator. Guess what, this idea has been around for a while (root level widgets that display useful information). Here's a perfect example of the concept.

      --

      "Nature doesn't care how smart you are. You can still be wrong." - Richard Feynman

  8. That's just standard Apple mentality for you by jbellis · · Score: 0, Troll

    Apple isn't about choice. Apple is about the One True Way, which is whatever way Jobs likes at the moment.

    In this case the Apple solution is Expose; diluting that with other solutions (even though they may work better for some workflows) just isn't in the cards.

    1. Re:That's just standard Apple mentality for you by Jeremy+Erwin · · Score: 2, Interesting

      If an operating system supports two different methods of organizing the desktop, then some inexperienced programmer will find some method of supporting only one.

      "Yeah, our App tends to crash Expose. Use Virtual Desktops instead."

  9. Many people feel Expose serves well enough by SuperKendall · · Score: 5, Interesting

    For me Expose works well enough as a virtual desktop - I have a lot of windows opened, but when I used to use a virtual desktop on UNIX most of the rooms would be pretty much one thing anyway - like a room for browsing. Now I can just hit F10 on a browser and see all the current browser Windows.

    I think Apple has just not focused any energy on an "Apple Way" to manipulate virtual desktops. It's a tricky UI problem and probably the work needed to keep programs in different rooms is too "virtual" for many people. Note that he did state Apple made changes that were seemingly very favorable to the writing of DesktopManager, so it would seem the folks at Apple are at least nuturing the concept - and if they ever do include such a program I don't think you'll see any sour grapes from this guy as he is already giving it away.

    I did like his idea for "Window Wells" (even though I think that was the interviewers term) a lot, so instead of virtual desktops being really virtual you have "clumps" of windows on screen (which are your virtual desktops) that you can click on like small expose'ed windows to expand the desktop. I'm still not sure of the best way to get windows in or out of these desktops.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Many people feel Expose serves well enough by geordieboy · · Score: 5, Interesting

      I couldn't use Expose as a replacement for virtual desktops. I tend to put separate projects on each different desktop, not windows of the same type. So for example I will have TeX files and a DVI viewer for a paper I am working on on desktop 1, C code and a plotting program on another, etc. etc.
      It would be much less efficient for me to collect all the files
      I need using Expose. I tend to use Expose as a cute way to switch between say 5 Safari windows. It would be hideous trying to organize 50 windows with it.

      --
      The world is everything that is the case
    2. Re:Many people feel Expose serves well enough by SilentChris · · Score: 4, Insightful

      I'm still waiting for Expose to have a way to move windows around with the mouse. At least as an option. I like the feature, but often I find myself wanting to reorder the windows after it does so (put all the important stuff on one side, web stuff on the other, etc. If I could do that, AND Expose could remember it, the feature would be an absolute godsend. It would literally be like having a physical desk organized by work.

    3. Re:Many people feel Expose serves well enough by TheRaven64 · · Score: 4, Interesting

      I would like to see a nudge feature added to Exposé. Using this, you would press some combination of keys (or a mouse gesture, corner activation, or whatever) and get a different cursor. Any window you clicked on with this cursor would be nudged away (ideally off screen). When you got to the window you wanted, you would deactivate the nudge cursor, and the next window you selected would become the foreground window, at which point the others would all fly back to their old positions (behind the new front window). I believe that this would be better at preserving the spacial metaphor, and would scale to large number of windows, better than the current Exposé implementation.

      --
      I am TheRaven on Soylent News
    4. Re:Many people feel Expose serves well enough by batkiwi · · Score: 2, Insightful

      How often does the average MAC user have a DVI viewer, c code, a TeX file, and a plotting program open?

      I mean, they've got to develop for who they're selling to.

    5. Re:Many people feel Expose serves well enough by catwh0re · · Score: 1

      I'm not sure if this has been mentioned yet in the post, Expose has an hidden feature which does this window wells idea that you are talking about. It'll shrink the desktop+windows into a small portion of the screen, clicking it brings it back. It's not totally elegant yet, so i can see why apple have it disabled.

    6. Re:Many people feel Expose serves well enough by Anonymous Coward · · Score: 0

      Except it wouldn't scale well at all. If you had 50 windows open, you would potentially have to look through each one, sequentially, before you found the one you wanted. It would be like Insertion Sort! It would take forever!

    7. Re:Many people feel Expose serves well enough by Anonymous Coward · · Score: 0

      Yep, which is why all Linux GUIs suck ass. They cater to the folks with a DVI viewer, c code, TeX file, and plotting program open.

      Programmers do a piss-poor job of designing interfaces. One of the products my employer sells has a programmer-designed interface that sells poorly because our customers are very, very untechnical, and if I had to use this thing I'd be challenged to get much work done with it, at least until several months after being forced to use it day in and day out.

      Look, it's like VI. Yes, it's very useful. Yes, it's powerful. But the UI is absolutely loathesome. It takes so long to learn that the average computer user will never spend the necessary time to learn how to use it effectively. It's a programmer designed UI.

    8. Re:Many people feel Expose serves well enough by outZider · · Score: 1

      I would say quite a few have different types of apps open, whether code, rendering, or video. The OS tends to lend itself to many different types of tasks. For instance, when working in Final Cut Pro, you tend to have a screen full of video crap. It'd nice to be able to Command-Option-Rightarrow to your mail and web browser. *shrug*

      Also, it's generally accepted to call them a 'Mac'. MAC would be used in cases like 'MAC Address'. :)

      --
      - oZ
      // i am here.
    9. Re:Many people feel Expose serves well enough by Anonymous Coward · · Score: 0

      Thank God someone implemented Alt-Tab switching before you came along.

  10. Wrong quartz... by Tassach · · Score: 3, Funny

    I got all excited thinking there was going to be an article about DIY piezoelectric devices

    --
    Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
  11. Okay. by numbski · · Score: 2, Funny

    Note: THIS IS ON TOPIC. RTFA. KTHX. :)

    The man doesn't like spirits, but he likes beer.

    I've noted, most everyone either likes liquor, liqueur, or beer.

    Why is there such a lack of interest in cider? I have my own batch finishing up it's first rack right now, and I'll be moving it to second racking adding honey tomorrow. :P

    The more I've read the history of this country, it seems like the germans moved in and totally obliterated the cider makers and moved in with the beer. :( I love my cider dangit. :P

    Oh, and love the app, use it all the time. ;)

    --

    Karma: Chameleon (mostly due to the fact that you come and go).

    1. Re:Okay. by castlec · · Score: 1

      I love cider too........ how about some cooking instructions??? I used to always drink woodchucks but you can't get those in the czech republic :o)

      --
      When I tell an object to delete this, am I killing it or telling it to kill me?
    2. Re:Okay. by numbski · · Score: 1

      On the simplest level, go to the supermarket (you have those, right?), get the freshest apple juice or cider you can get your handles on. A gallon (2-3 litres?) should be plenty to start. Make sure it has no preservatives in it. If it's pasteurized, you'll need to add one more step.

      Take it home, airlock it somehow. Airlocks here are cheap, less than $2. If not, duct tape, plastic tubing, and a glass of water will work nicely.

      If it was pasteurized, add some yeast. Googling for cider yeast will do fine.

      Add the yeast, airlock it, wait a week to 10 days for fermentation to settle. This is your fist 'racking'. Siphon off the top 90%, leave all sedementation behind, into a new, disinfected container. Add something to sweeten it if you like, airlock it again. This is your second racking.

      Leave this for a month to 6 months, rack again at some point if you wish. Drink, bottle, keg, whatever. Enjoy. :)

      --

      Karma: Chameleon (mostly due to the fact that you come and go).

    3. Re:Okay. by hunterx11 · · Score: 1

      If it's clear and yellow, you've got juice there, fellow.
      If it's thick and brown, you're in cider town.
      Now there are two exceptions...

      --
      English is easier said than done.
    4. Re:Okay. by castlec · · Score: 1

      i'm not sure where i can get non pasturized cider. this is an apple country though, it must be somewhere. i haven't done the googling yet, but i assume that the cider yeast is different than bakers correct? also, what are the instructions if i find a place that has it before pasturization. thanks a lot man :o)

      --
      When I tell an object to delete this, am I killing it or telling it to kill me?
    5. Re:Okay. by TractorBarry · · Score: 1

      Well I like cider, beer and spirits (usually in that order throughout the day. No matter what them namby pamby do gooders tell you, you simply can't beat a good breakfast scrumpy)

      In fact I like cider so much I once adapted the (old cartoon) Spiderman theme song to be more to my liking....

      All together now a 1, a 2, a 1, 2, 3, 4:

      Ciderman, Ciderman,
      Drinks whatever cider he can,
      Is he pissed ? 'course he is,
      To stay awake he necks some whizz,
      Look out!
      Here comes the Ciderman

      Is he wrecked ?
      Listen bud,
      He's got Diamond White 'stead of blood,
      Can he swig from a can ?
      He'd drink from a frying pan,
      Hey there,
      There goes the Ciderman.

      In the chill of night,
      At the scene of a club,
      Bouncers throw him out,
      12 pints was enough.

      Ciderman, Ciderman,
      Drunken woebegone Ciderman,
      Wealth and fame
      He's ignored,
      Special K's his reward.

      Hey there, life is a one big piss up,
      Wherever there's a piss up,
      You'll find the Cider man.

      o.k. I'll get mi coat (the pubs open and it's happy hour all week)

      P.S. For all you non UK residents "Diamond White" and "Special K" are military grade ciders much loved by teenagers, dropouts and the unemployed.

      --
      Sky subscribers are morons. They pay to be advertised at !
    6. Re:Okay. by numbski · · Score: 1

      Just don't add any more yeast. Let the natural yeast do the work. It takes longer, but it tastes MUCH better, and you don't get a bread-like smell during fermentation.

      After you get the process down, you'll probably want to mix-and-match juices. You'll want to add some sour along with sweet, as all the sugar will get eaten by the yeast unless you add a chemical to stop fermentation early. You have to look beyond the sugar to the flavor of the apple/juice that you add to see what it will do. Adding honey makes it partially a cider, partially meade.

      --

      Karma: Chameleon (mostly due to the fact that you come and go).

    7. Re:Okay. by numbski · · Score: 1

      LOL

      Special K in the US (possibly elsewhere) is a breakfast cereal enjoyed by (mostly) women in order to lose weight because they think they're fat.

      --

      Karma: Chameleon (mostly due to the fact that you come and go).

    8. Re:Okay. by TractorBarry · · Score: 1

      Egad ! we also have Special K breakfast cereal but it's mostly thrown at the wall by irate cider drinkers who've sent their better half out to do the shopping (due to being too "refreshed" to go themselves ;)

      --
      Sky subscribers are morons. They pay to be advertised at !
    9. Re:Okay. by zogger · · Score: 1

      I have to say, I don't drink and I still thought that was funny as heck!

    10. Re:Okay. by Zen+Punk · · Score: 0

      You forgot that "Special K" is also a nickname for Ketamine, a (Schedule I or II? Can't remember.) narcotic/hallucinogen/icky evil drug popular on the black market.

      --
      Sleep is futile.
    11. Re:Okay. by Altus · · Score: 1



      wouldnt cider with honey technicaly be a cyzer?

      Im a beer brewer and a mead maker but I havent played with cider yet... probably will give it a shot this fall. i have a friend who has a press and usualy presses his own cider.

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

  12. Not such a good app by Jeedo · · Score: 3, Informative

    I've used this application and it was highly unstable, crashed constantly and was generally nothing like the virtual desktop one has gotten accustomed to on UNIX desktops.

    1. Re:Not such a good app by numbski · · Score: 3, Interesting

      Eh, I think you just have bad luck.

      Granted, no, this is 'not your dad's desktop manager' in the sense that you're used to in X, but it's still a far cry improvement from not having it at all, and if you look at the sources, his readme's, and heck, just this interview, he has some interesting improvements coming down the pipe.

      But if you want to cry instability, let's hear it:

      What's your hardware specs?
      What OS?
      What version of Desktop Manager?

      --

      Karma: Chameleon (mostly due to the fact that you come and go).

    2. Re:Not such a good app by Anonymous Coward · · Score: 0

      Geez. That's awful. If the software was alpha quality and highly unstable, he should at least put a warning on the front page of the app's site. Kind of like the warning that's on the front page of the app's site.

      Uh. Right...never mind.

    3. Re:Not such a good app by aarku · · Score: 2, Informative

      The parent comment is most likely outdated knowledge. You were most likely using versions v0.1-v0.3. The latest v0.5.1, while still officially "alpha quality" has yet to crash on any of the machines I use or maintain. Try a more recent version.

    4. Re:Not such a good app by Devil's+Avocado · · Score: 1

      You might want to try it again. I've been using it since last fall, under both Jaguar and Panther, and it's been totally stable. There were some quirks after the upgrade to Panther, but nothing critical. I use it every day, all day, and it *doesn't* crash.

    5. Re:Not such a good app by Jeedo · · Score: 4, Informative

      I'll answer this to the best of my current capability, my iBook being in Ireland and all due to display problems.

      I usually use GNU/Linux on my iBook, which is one of the later G3 models, or a G3 800MHz 12.1". The OS i was using at the time was Mac OS X 10.3 booted from a 1GB partition i use when i want to muck around with OSX, as for the version, i dont remember nor am in a position to check, this was about 3 months ago though, and was the latest version at that time.

      Now, dont get me wrong, in it's core concept this is an okey app, however the implementation is somewhat bad.

      1. When you use the windowlist-in-macbar ( the file-edit.. thing at the top of the screen ( danm my mac-jargon knowlage is outdated )) it frequently underflows under other menus when you have a small screen, such as in my iBook. Of course this it not in all applications but it happens when you open certain apps that spawn lots of these menus not to mention having the iChat menu and others up there.

      2. It crashed, and often, when this happened all windows were gathered in one desktop on top of each other, nothing you couldnt solve with Expos&#233; but still a frequent annoyance which eventually led to me uninstalling it.

      3. To top it all off you got a "You are about to shut Desktop Manager off, this will gather your windows inn one desktop yadayadayada yes/no" message when the computer shut down, this in itself was not such an annoyance, just something that added to problem nr. 2.

      Don't get me wrong, i just said it was unstable at the time, it is however a great concept. I use this feature on my GNU/Linux desktop every day so it's not like i'm unused to the concept, however at the time i tested it it was at least on my machine way too unstable to be of any good use, so i just went back to Expos&#233;. However i wish the author the best of luck in future development and hope that by the next time i test it will actually work as desired, plust it had some neat ( if useless ) transition effects.

      Cheers.

    6. Re:Not such a good app by Anonymous Coward · · Score: 0

      I'm not the grandparent poster, but I am seeing crashes.

      What's your hardware specs?

      1 GHz G4 PowerBook Titanium 15" with SuperDrive and 1024 MB RAM.

      What OS?

      Mac OS X 10.2.8.

      What version of Desktop Manager?

      0.5.1

      Upon attempting to launch DesktopManager, it immediately triggers a report of "undefined reference to _NSShadowAttributeName" in console.log and crashdumps.

      The crash.log consistantly lists:
      Exception: EXC_BAD_ACCESS (0x001)
      Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000020

    7. Re:Not such a good app by numbski · · Score: 1

      10.2.8

      I hate to say this, but I'm almost certain that the README says it's only supported on 10.3 (might be wrong though).

      _NSShadowAttributeName sounds like a window or pointer feature that may not have been there is 10.2. Just a hunch.

      --

      Karma: Chameleon (mostly due to the fact that you come and go).

  13. Or not... by endoboy · · Score: 2, Insightful

    ever heard of visual basic?

    1. Re:Or not... by Anonymous Coward · · Score: 0

      Yeah, really. Or Javascript even.

    2. Re:Or not... by Anonymous Coward · · Score: 2, Insightful

      Except that Visual Basic costs more than the entire home computer back in the 80's. It is also not included on the PC when you buy it as was customary back then (in ROM no less). Add that to the fact that VB is far more complicated than the old fashioned BASIC of yesterday (Shitloads of menu options versus what? LIST and RUN?)...

    3. Re:Or not... by Short+Circuit · · Score: 2, Interesting

      Maybe I'm just not good at VB, but I got less flicker making my own animated screensavers on my old 286+QBASIC than I get with VB. (VB does make some of the job easier, though.)

      Unfortunately, VB so spoiled me in elementary and middle school that I still can't sit down long enough to learn to combine C and GTK, or C++ and QT, or Perl and Tk. I have managed to do some stuff with C and SDL, though.

    4. Re:Or not... by endoboy · · Score: 2, Informative
      VB.net standard edition-- $90

      even neglecting inflation, I don't think that that comes to "more than the entire home computer back in the 80's"

    5. Re:Or not... by Anonymous Coward · · Score: 0

      I was thinking of the Enterprise edition cost, since I've never purchased the lower end product. Computers like the Atari 800XL which I learned programming on way back in the day were dirt cheap.

      Good to see that you couldn't poke holes in the rest of the argument...

    6. Re:Or not... by endoboy · · Score: 1

      "couldn't be bothered to", not "couldn't"

    7. Re:Or not... by mabinogi · · Score: 1

      ever used an 8bit computer with BASIC?

      VB is not and never will be a substitute for something _designed_ for hobyists and beginner programmers...

      With an old C16/+4, Amstracd CPC, ZX Spectrum, Spectravideo, or even something as small as the ZX81, programming was what you _did_ with them. Sure there might have been other software you could buy, but you didn't buy one of those machines for the software...you bought them to play with...which meant programming, whether it be BASIC or assembler - or LOGO....

      A PS2 with the BASIC that comes with it is a far more similar thing....

      --
      Advanced users are users too!
    8. Re:Or not... by shellbeach · · Score: 3, Interesting

      ever heard of visual basic?

      Actually, I would have said that Perl (and Perl/Tk for creating GUIs) is the equivalent BASIC these days. Simple, straightforward, free and cross-platform ... and there's some excellent O'Reilly books for beginners.

      YMMV, of course :)

    9. Re:Or not... by kyknos.org · · Score: 1

      May be Python is even better for beginners to play and learn.

      --

      SHE does throw dice.
    10. Re:Or not... by shellbeach · · Score: 1

      May be Python is even better for beginners to play and learn.

      Either Perl or Python, I'd suggest - it often seems that liking one means hating the other. Personally I dislike Python, mainly because I see no advantages over Perl, I dislike the reliance on whitespace and I find it smacks too much of C. But if you like C and you like whitespace-delimiting of blocks then you'll love Python and hate Perl.

      They're both great languages though, and excellent means for a beginner to learn to program without having to worry about memory-management and basic string-processing routines, and with the extended power of hashes and regexps.

    11. Re:Or not... by kyknos.org · · Score: 1

      Yes they are both great languages. I prefer Python because it is used as scripting language for Blender and Gimp, but I do not hate Perl at all and use it sometimes too.

      --

      SHE does throw dice.
  14. narf? by happyfrogcow · · Score: 2, Funny

    nicking my, now ex, girlfriend :)

    someone define "nicking" for the, um... curiously imaginative.

    1. Re:narf? by Anonymous Coward · · Score: 0

      to nick (berg) - to behead, decapitate

    2. Re:narf? by KillaKen187 · · Score: 1

      the last thing i was nicking was my evil co-workers car.

    3. Re:narf? by guet · · Score: 1

      nicking == stealing, nabbing

      British slang.

    4. Re:narf? by FyreFiend · · Score: 2, Insightful

      It's UK english for stealing.

      --
      - Apple Computer......proudly going out of business for over twenty years.
    5. Re:narf? by mister_tim · · Score: 1

      UK English? Isn't that just English?

      And 'nick' as slang for stealing is also common in Australia - but then we probably got it from the 'motherland' as well.

    6. Re:narf? by PDubNYC · · Score: 1

      "And 'nick' as slang for stealing is also common in Australia - but then we probably got it from the 'motherland' as well." It's probably the reason a lot of your ancestors were sent there from the Motherland to begin with as well. :-P And no, I am not looking for a history lesson here, "Well actually, only the very worst criminals were sent to Aus...." I'm just kidding around

  15. Desktop Manager... by antdude · · Score: 1

    The last time I tried to use Rich Wareham's desktop manager on my PowerBook G4 (1 Ghz; 15"), it crashed in Jaguar/MacOS X 10.2.8 since it wasn't compatible with it. Only Panther.

    Are there any good free virtual desktops? Codetek's nice but it is not free and a bit bloated (too many features).

    I use GoScreen in Windows, and it rocks!

    --
    Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
  16. Hardly insightful, more like casual dismissial by SuperKendall · · Score: 4, Interesting

    Apple is not really about "One Way". They are about a "Crafted Way". That is, anything that Apple includes in the OS they like to have honed to a fine sheen before users can touch it.

    If Apple were about "One Way", you would not have the nice integration between the finder and Terminal. You can stick to the Finder to find documents or manipulate files - or you can just use the Terminal, or you can use a hybrid of the two and drag files into the Termainl from the finder and get a full path expanded for you in the middle of some command.

    Note in the article that he mentions Apple made some API changes which were very favorible to Desktop Manager. They could have switched stuff around to crush him like a bug. But they instead made changes that helped - does that sound like a company bent on the "One Way" to do everything?

    As I've said before I really think Apple and virtual desktops is not so much an issue that they do not want it, as they have not invested the mental energy to solve the UI problem of the user maintenience of virtusl desktops - moving windows between, making sure the right windows wind up in the right desktops, etc. If anything I think virtual desktops will arise in OS X through an evolution of Expose, though in the end it may not be quite virtual desktops as we know them today.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Hardly insightful, more like casual dismissial by Anonymous Coward · · Score: 1, Interesting
      Note in the article that he mentions Apple made some API changes which were very favorible to Desktop Manager. They could have switched stuff around to crush him like a bug. But they instead made changes that helped - does that sound like a company bent on the "One Way" to do everything?
      Note also that he had to reverse engineer all this stuff. Apple does not seem as helpful as you suggest.
    2. Re:Hardly insightful, more like casual dismissial by Anonymous Coward · · Score: 0

      > That is, anything that Apple includes in the OS they like to have honed to a fine sheen before users can touch it.

      Yeah, right. MacOS X 10.0 anyone?

    3. Re:Hardly insightful, more like casual dismissial by WinterSolstice · · Score: 1

      Well, they "like to have"... not "they have"...

      Big difference.

      -WS

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    4. Re:Hardly insightful, more like casual dismissial by Anonymous Coward · · Score: 0

      > Well, they "like to have"... not "they have"...
      > Big difference.

      Well, in that case, I'm sure Microsoft likes to have the most secure OS in the world.

    5. Re:Hardly insightful, more like casual dismissial by WinterSolstice · · Score: 1

      See? Exactly my point :D

      I'd like having a brand new Bugatti and house in Rio...

      -WS

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    6. Re:Hardly insightful, more like casual dismissial by SuperKendall · · Score: 1

      Well, in that case, I'm sure Microsoft likes to have the most secure OS in the world.

      Yes, they would...

      So the only difference between Apple and Microsoft is how close they come to doing what they would like to do.

      I'll leave it up to the reader to decide which one really comes closer, though my opinion is probably pretty clear.

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
  17. Undocumented API calls by mst76 · · Score: 4, Insightful
    I found this slightly disturbing:
    Sure. OS X has a couple of undocumented API calls 'CGSSetWorkspace' and 'CGSGetWorkspace' which allow you to split the window trees into different desktops and move between them.
    [...]
    Believe me there is a lot in OS X that is undocumented and suggests interesting things.
    While not many people blame Apple for keeping Quartz closed source, many would argue that at least the APIs should be exposed. This gives independent app writers a level playing field when writing apps that might compete with Apple's own offerings.
    1. Re:Undocumented API calls by Otter · · Score: 5, Insightful

      I don't think this is so much a way to stifle competition (competition with what Apple product?) as either 1) those calls are not stable yet or 2) they don't want to encourage use of certain things at the application level.

    2. Re:Undocumented API calls by Archibald+Buttle · · Score: 4, Informative

      Apple does indeed have a number of undocumented API calls in Mac OS X. Now whilst it would be nice for all of the API calls to be documented they simply aren't right now.

      Quartz actually can do a whole load of other things using undocumented APIs besides this virtual desktop stuff. It's also possible to rotate windows, shrink them, and zoom them up - I have an application that does this. However those that have investigated the APIs that allow these wild things to happen have found that they're not exactly complete.

      Apple has of course been challenged about these APIs, and they remain consistent: you shouldn't use these APIs. They are undocumented because they are likely to change in the future. When the API is complete they will be documented, but not before then.

      It's quite possible that all of these APIs (handling virtual desktops, rotation, and scaling) will be documented for 10.4 (Tiger).

      One example of this is the shadow effect that Mac OS X supports on windows and other graphics. It's been there since 10.0, but it wasn't publically documented (although some people discovered its API). Apple only used this API for shadowing windows and menus. An official API for shadows was introduced in 10.3 which is more fully featured and easier to use than the old unofficial API. Indeed there's two official APIs now for shadows - one for low level Quartz calls, and a high-level API for AppKit.

      Of course what Apple really should do is make sure that these new experimental APIs simply aren't present in the shipping OS. Apple themselves don't use them, so why leave them around?

    3. Re:Undocumented API calls by transient · · Score: 1
      There's nothing disturbing about it; Apple has been doing this since their first release and it's not to slant the playing field. They keep parts of their APIs secret when they aren't ready to commit to supporting them. As soon as a function is documented, they have to provide backwards compatibility for it in future versions of the OS.

      It's also possible that these particular functions aren't meant to be used as API per se, but are just internal support functions. Maybe they're part of fast user switching. Who knows?

      When you write a library, do you document every single function? No, because some of those functions only exist to support the public functions. For any moderately complex system, there are going to be many more private functions than there are public, documented functions.

      --

      irb(main):001:0>
    4. Re:Undocumented API calls by Queer+Boy · · Score: 1
      Sure. OS X has a couple of undocumented API calls 'CGSSetWorkspace' and 'CGSGetWorkspace' which allow you to split the window trees into different desktops and move between them. [...] Believe me there is a lot in OS X that is undocumented and suggests interesting things.

      I'm going to assume that the Workspace functions and the transition effects are for nothing more than Fast User Switching. I'd like to know how to change the effects like he did.

      --
      Not since Marie-Antoinette played milkmaid has looking simple and honest been so fake and complicated.
    5. Re:Undocumented API calls by ebooher · · Score: 4, Insightful

      Well, I couldn't help but whip my thang out here. I also apologize in advance for my patent pending Bullshit Theory of the Day

      Anyway. The API's for Quartz, and what you can do with the UI for the system is documented. Pick up some of the dog books from O'Reilly (Which, while I'm on the subject, where did the dog come from anyway. I mean .... it may not have been exactly public knowledge, but OS X has always been a cat.) Everything you need to know about how to do proper manipulation is there. All black and white.

      The problem enters the equation when developers poke around and find things that Apple didn't mean for them to find. Ergo the undocumented hooks this guy is using. Now, while I will agree there is a bit of coolness about being able to locate something and then add it into your own code so you can just make a simple call and use it like you wrote it yourself, there is a problem with it. A guy in an earlier post complained about it not working with Jaguar. Most likely, it won't work with Tiger either.

      You see, you have to understand that Apple, even though they are a big corporation out to make money off of both you and your grandmother, isn't specifically trying to hide something that you can use to write cool software to get your grandmother to buy a brand new G5. They want you to write something your grandmother will feel compelled to spend $2000 on a brand new Mac to use.

      Here comes the but....

      But the internal developers deep within the bowels of Apple are slaving day and night to make The Next Cool Thing (TM) that everyone will have to have in the newest version of OS X. These features are extremely fluid, sometimes disappearing completely in a simple increment upgrade within the same major version of the Cat. Because those same developers might have tried to create something too cool and have opened a hole somewhere else. They are undocumented because they might be gone tomorrow, or might change how they are called, or might become a butterfly all by the next major revision when they become concrete.

      You see, when they solidify and become concrete, then documents are written, then become published API's with which to write code against. I mean, I don't know about you, but I wouldn't want to write code against an API, documented or not, that I knew wasn't standard yet and would most likely change tomorrow.

      But this is all just the opinion of one old man.

      --
      "Genius may shine aloof and alone, like a star, but goodness is social, and it takes two men and God to make a Brother."
    6. Re:Undocumented API calls by Ilgaz · · Score: 1

      or... someone at Redmond is watching with his photocopier ready ;)

    7. Re:Undocumented API calls by dekeji · · Score: 1

      When Microsoft does it, it's an evil plan for world domination, when Apple does it, people are looking for excuses and explanations.

      In fact, it is true that whether Apple publishes these APIs or not makes not one iota of a difference: they have such a niche market and they already control it so tightly that their position doesn't change. When Microsoft does it, it does harm competitors.

      Both companies probably do it without much thought or reflection.

    8. Re:Undocumented API calls by dekeji · · Score: 1

      While not many people blame Apple for keeping Quartz closed source, many would argue that at least the APIs should be exposed.

      The problem isn't that Quartz is closed source, the problem is that it is based on proprietary and non-standard APIs. Both Apple and Sun are trying to emulate Microsoft in this regard: set proprietary API standards and tie software developers and users to the company.

      I think it's a gamble that they are bound to lose: open APIs catch up quickly and they will be the long term winners.

    9. Re:Undocumented API calls by Lars+T. · · Score: 1

      No, when Microsoft does it, they do it to allow their apps to directly do something with their OS, giving them an edge over any competing apps - and those competitors use them anyway, they sue them. When Apple does it, they don't even use them themselves.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    10. Re:Undocumented API calls by revscat · · Score: 1

      The history of Apple software contradicts your assertion. Apple typically follows a "develop, field test in a software package, release to community" cycle of API development, which has the nice effect of giving the world APIs that have fewer bugs and security issues than otherwise. The Java model -- "have really smart people develop API, release to community" -- by contrast doesn't work as well (see EJBs) since there are frequently APIs developed for which there isn't as much of a demand for as originally expected.

  18. Question and comment by Otter · · Score: 1
    Is Desktop Manager likely to work at least modestly on Jaguar? The download site refers to Panther, but it's not clear what to expect on older versions.

    Anyway, while I agree with his point about programming being a lot less attractive to new users than it was 20 years ago, I don't know if that's true when comparing to 10 years ago. GUI programming with new tools (VB, Cocoa and Interface Builder, Qt and Designer) is a much more attractive proposition for people with a little C/C++ than it was a decade ago.

    1. Re:Question and comment by Anonymous Coward · · Score: 0

      "Is Desktop Manager likely to work at least modestly on Jaguar?"

      I've found Desktop Manager works on both Panther and Jaguar with no loss of function. I suspect that Entourage was a feature originally designed to be included in Jaguar, but may have been delayed for technical or (more likely) marketing reasons.

      On the subject of programming, I have an observation: modern programming interfaces don't have the same kind of immediacy they used to. Eh? Well, the Commodore 64, the Apple II, and legions of machines running MBasic (later QBasic) could all execute code the instant it was typed; you typed, the box did something, you felt a sense of gratification (perhaps this is why the Terminal is so popular amongst Linu-philes?). In my opinion, the write, compile, test, re-write approach removes that gratification, and removes a layer of feedback that makes tracking bugs harder.

  19. Big Brick Walls by ObsessiveMathsFreak · · Score: 4, Insightful

    With the old home computers one could get instant gratification by writing a program which drew a space-ship on the screen in 10 lines of BASIC. Nowadays you'd have to learn COM + Win32 + DirectX just to get a black rectangle.

    Amen.

    It required at least 300+ lines of Visual C++ to get a black screen and almost 150 lines of C++ to get SDL to throw up a black screen.

    What the hell is going on here?!?! I know a lot of things need to be set up, resolution, sound, etc. But most people were happy with the default options they were given on those old computers. They made Elitle out of it for christs sake.

    So how come I can't start a gaming project with a simple

    Setup_SDL(SDL_STANDARD_OPTIONS);

    Is it too much to ask?

    --
    May the Maths Be with you!
    1. Re:Big Brick Walls by Anonymous Coward · · Score: 0

      Once you implement Setup_SDL(), you can.

    2. Re:Big Brick Walls by Milton+Waddams · · Score: 1

      What about Java? It's pretty easy to GUI program. The tutorial on java.sun.com is pretty easy too

    3. Re:Big Brick Walls by Greyfox · · Score: 1

      I've run across a few scheme tutorials that cover implemeting a basic turtlegraphics-like drawing system. It wouldn't be too hard to expand upon that to provide a simple programming environment for a beginning programmer...

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    4. Re:Big Brick Walls by sparrow_hawk · · Score: 4, Interesting
      Umm... I'm not sure what version of SDL you're using, but all you need to throw up a black screen in SDL (in C) is the following:
      #include <stdio.h>
      #include <stdlib.h>

      #include "SDL.h"

      int main (int argc, char **argv) {

      if (SDL_Init(SDL_INIT_VIDEO) < 0) {
      fprintf(stderr, "Could not init SDL: %s\n", SDL_GetError());
      exit(1);
      }
      atexit(SDL_Quit);

      SDL_Surface *screen;
      screen = SDL_SetVideoMode(640, 480, 32, SDL_SWSURFACE);
      if (screen == NULL) {
      fprintf(stderr, "Could not set video mode: %s\n", SDL_GetError());
      exit(1);
      }

      SDL_Event event;
      int quit = 0;
      while (quit == 0) {
      SDL_Delay(1);
      while (SDL_PollEvent(&event)) {
      if (event.type == SDL_QUIT)
      quit = 1;
      }
      }

      SDL_FreeSurface(screen);

      return 0;

      }
      Compile it with
      gcc -Wall -ggdb `sdl-config --cflags --libs` ./SDL_app.c -o SDL_app
      and bingo, you've got a black screen. That's 35 lines of code, and it could have been less if I hadn't included error-checking and other nice things like that. For the record, most of it was cribbed from the SDL Introduction.

      SDL is a beautiful, compact API that's also nicely extensible (eg. SDL_image, SDL_mixer, SDL_net, smpeg, etc.). There's no *way* you need 150 lines of code to do interesting things with SDL.
    5. Re:Big Brick Walls by downbad · · Score: 1
      C++ alert.

      You can't just declare your variables anywhere you want with C.

    6. Re:Big Brick Walls by _fuzz_ · · Score: 1

      Check out Pygame. It's a Python layer over SDL that simplifies things quite a bit. It kinda takes me back to my C64 days, though it's a heck of a lot more powerful.

      --
      47% of all statistics are made up on the spot.
    7. Re:Big Brick Walls by nusuth · · Score: 1
      35 is indeed lower than grandparent, but how about "10 cls 0" (Locomotive Basic 1.x)? Or if you want to set resolution, pen color and background color too "10 paper 0:mode 0:pen 7"? This code not only sets the correct res and colors, it also NEVER fails, so no error checking is necessary.

      You couldn't really set any resolution possible with with the basic commands, nor you could use an arbitrary palette but if you wanted to do just use what was available in BASIC, without going into programming hardware yourself, you could get away with just a few lines.

      --

      Gentlemen, you can't fight in here, this is the War Room!

    8. Re:Big Brick Walls by Anonymous Coward · · Score: 0

      Ever since 1999, yes you can.

    9. Re:Big Brick Walls by gidds · · Score: 2, Informative
      They made Elitle out of it...

      If you mean 'Elite', then that's a bad example. The original (Beeb) version hacked the display registers to create its own hybrid screen mode, with a highish-res black-and-white main view, and a lower-res 4-colour status panel beneath. (I guess they effectively switched between MODE 4 and MODE 5 using a timer interrupt that fired 2/3 the way down the screen, and switched back in the flyback.)

      In short, they didn't use the default options!

      Mind you, as someone else said, it's dead easy to create windows and stuff in Java, and the sorts of graphics primitives that micros used to have are also pretty easy.

      --

      Ceterum censeo subscriptionem esse delendam.

    10. Re:Big Brick Walls by sparrow_hawk · · Score: 1
      Right -- if my memory hasn't failed me, in GW-BASIC it was
      10 CLS
      20 SCREEN 7
      You're comparing kumquats to laptops, however, since most BASIC variants (and in fact most operating systems of the era) *started* with a black screen. While the SDL code may be longer (though not by much) it is a *lot* more powerful.
    11. Re:Big Brick Walls by sparrow_hawk · · Score: 1

      That's a good point. As the AC mentioned, it's supported by the C99 standard but *not* the ANSI (C90) standard. I prefer to declare stuff as I go along because I find it makes my code more manageable, and since the compilers I'm using support C99, I haven't had any problems with it. I wasn't aware the change had been made, though, so thanks for bringing it to my attention.

      If you're using a compiler that gets a little -pedantic, all you have to do is move the variable declarations to the top of the function.

    12. Re:Big Brick Walls by downbad · · Score: 1

      True. With C90 you can put the declarations in new blocks (eg. { int i; }), but (thank god) nobody ever does that. I guess I just don't like these newfangled C specs. :)

    13. Re:Big Brick Walls by jhesse · · Score: 1

      Bah!

      SCREEN 9!!!

      640x350! 16 out of 64 colors!

      _That_ was luxury!

      --

      --
      "I have also mastered pomposity, even if I do say so myself." -Kryten
    14. Re:Big Brick Walls by Lars+T. · · Score: 1
      It required at least 300+ lines of Visual C++ to get a black screen and almost 150 lines of C++ to get SDL to throw up a black screen.

      OTOH throwing up a blue screen takes much less LOC.

      --

      Lars T.

      To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

    15. Re:Big Brick Walls by Anonymous Coward · · Score: 0

      For comparison, here's how you create a black screen on a Commodore 64 (no compiling needed):

      10 POKE 53280,0: POKE 53281,0
      20 PRINT CHR$(147)

      Clearly the C64 wins if you are interested in the kind of instant results that provide encouragement to beginners (even if it is almost utterly useless in almost every other regard as a computing platform).

    16. Re:Big Brick Walls by fermion · · Score: 1
      There was a time you could do simple things on simple machines. On an Apple ][, in a very few lines of code, I could do all sort of cool graphic manipulations with shape tables. All I needed was the built in basic.

      At the same time, to do real coding I had to learn to log into the DEC machines, learn the command line, learn ed(no vi for us), learn Fortran, learn the compiler, learn the linker, learn the debugger. All this and no cool graphics. ASCII art doesn't count.

      'Hello World' in Cocoa is like 5 lines. A black screen can be drawn in Interface Builder, which I believe generates no code, then a few lines of code to instantiate it.

      I have a little nostalgia for the old days. OTOH I would hate to have to build a GUI using shape tables, or, god help us, the convoluted grapics of MS DOS. Now that I think of it, i did build a GUI in DOS. Never again.

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
  20. Visual Basic is not bundled and manualed by SuperKendall · · Score: 5, Interesting

    But how many computers ship with VB, and a manual which shows you how to write cool little programs in VB? I really can't think of ANY!!

    Even OS X, which does at least ship with developer tools in every box really makes no mention of them.

    The thing about computers before was that it was super easy to just write ten lines of code and have something happen. Now you have to hunt down an IDE or an editor, and chances are you're writing a lot more than ten lines even for Hello World! The computers now have (as he said) a much higher barrier to entry of manipulation, though of course you can do a million times more if you do break that barrier - so I'd say the only hope is that the rewards of crossing that barrier are enough to lure people over.

    I agree with him that this is a real problem, far fewer people are exposed to the manipulation of computers at a young age and instead computers are treated as black boxes, not to be touched. Cars are headed the same way to some extent but there already was a much more powerful and widespread culture built up around people and engines, so it's a lot harder for that to vanish. I wish that more people would be able to think of computers as more like cars and less like toasters.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Visual Basic is not bundled and manualed by Anonymous Coward · · Score: 0

      Hello world? in 10 lines? I though it was just....

      #include
      #include

      int main(void)
      {
      printf("Hello, world\n");
      return EXIT_SUCCESS;
      }

      Or...

      #include

      int main()
      {
      std::cout "Hello, World." std::endl;
      }

      Or if we must make it at least 10 lines...

      class Greeting {
      void greet(Named target) {
      System.out.println("Hello, " + target.getName() + "!");
      }
      }
      interface Named {
      String getName();
      }

      class World implements Named {
      String getName() {
      return "World";
      }
      }

      class Main {
      public static void main( String[] args ) {
      Greeting greeting = new Greeting();
      greeting.greet(new World());
      }
      }

    2. Re:Visual Basic is not bundled and manualed by Anonymous Coward · · Score: 0

      Maybe they were confused, since most old BASIC programs were line numbered, starting at 10. Here's your 10 line program in BASIC:

      10 PRINT "Hello World!"

    3. Re:Visual Basic is not bundled and manualed by Anonymous Coward · · Score: 0

      But, in Office's defense, there ARE a few books that essentially are Basic programming primers using VBA.

      Then there's VBScript/WSH.

    4. Re:Visual Basic is not bundled and manualed by Phroggy · · Score: 1

      Even OS X, which does at least ship with developer tools in every box really makes no mention of them.

      Um, explain to me how 800MB of documentation counts as no mention?

      --
      $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
      $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
  21. Translation: by LordPixie · · Score: 0, Troll

    To steal. It's slang, and I don't think it carries any real crime connotatiom.

    Silly Brits, and their made up English words.


    --LordPixie

  22. Difficulties for beginning programmers by SandSpider · · Score: 2, Interesting

    He mentions that it's more difficult for beginning programmers to get a start, as compared to the old days. Partially because software companies have tried to hide everything, and partially because it's so much more difficult to write a small amount of code that will do something exciting.

    I disagree. Those points were more true a few years ago, but, at least with OS X, you have plenty of potential. First of all, there's Applescript and Applescript Studio. It's really easy to get a program started that does far more than in the old days, since most of your basic user interface work is done for you, and you can draw on the power of every installed application on your computer. Mind you, learning how to program Applescript is not like learning to program most languages, but it's a really good test of your problem-solving skills.

    The other part is web programming. Nowadays, if you can get a computer that's visible to the internet, or an account on a web server that allows custom CGIs, you can make custom programs that will not only be cool to you, but potentially cool to the entire world. That's a lot more incentive than you had in the old days, or at least a different kind of incentive. It might even make for more solid coders in the future, since hobbyist and learning programmers nowadays get to see people trashing their programs repeatedly, so there's good reason to make them work properly.

    No, it's not the same, and it's may not be particularly easy to get started in the windows world, but for the rest of us, there are plenty of good opportunities for the beginning programmers.

    =Brian

    --
    There is nothing so good that someone, somewhere, will not hate it.
    1. Re:Difficulties for beginning programmers by Tim+Browse · · Score: 3, Insightful

      I don't buy this "it's much harder these days to start programming" bullshit. It's purely a perceived problem because apps are more complex these days, and there are lots of them. But don't expect to write complex stuff when you start.

      Hell, the first program I 'wrote' on my Commodore PET was something that made a rocket fly up the screen over and over. It was very simple. You could accomplish the same these days on any machine by downloading gcc and writing a C program of frankly a very similar length and nature.

      I don't actually remember my PET or my BBC Micro running ICQ or browsing the web, or doing any of these things that people seem to think they can just pick up a compiler and throw together in a few days.

      Stuff has got more complicated, and people expect more features and UI. But to complain that it's hard to get started is just not true.

      Hell, with the GUI toolkits around now, it's actually way easier to do some of these cool things. Think back to the early days of GUI programming. From my own experience, programming RISC OS GUI apps was horribly complex and difficult to get going with. On the other hand, I remember how cool I thought it was when I realised that the OS did stuff like those handy edit boxes for you - you didn't have to do anything! :)

    2. Re:Difficulties for beginning programmers by nusuth · · Score: 1
      The problem is that capabilities of computers grew while the compilers and libraries didn't get any wiser.

      20 years ago, there was nothing you couldn't do with enough patience, an empty notebook, a pencil, a mnemonics table, a memory map and a little hex loader hacked in basic in thirty seconds. You could learn everything there was to learn about your (home) computer in a few months, tops, and you could hack right away. Now this is impossible and that is good. It means that computers are a lot more configurable, both in terms of hardware and software, and it means your computer is no more an isolated island. However that you can no longer learn all there is to learn about your computer in a few months shouldn't also mean you should have to spend much more time than whay you would have 20 years ago. It is what computer languages, libraries, compilers and IDEs are about. VCL+Object Pascal+Delphi was much easier to use than OWL+Pascal+BP IDE, although capabilities were about the same (and in VCL's favor.) There is a performance penalty to pay to use those newer libraries and programming environments. Problem is we (:everybody) don't and we (:users) can't pay enough. Environments aren't smart enough to make things simple as 20 years before.

      --

      Gentlemen, you can't fight in here, this is the War Room!

    3. Re:Difficulties for beginning programmers by Spy+Hunter · · Score: 1

      The problem is higher expectations. Starting programming in a simple system, a newbie will be happy to create a tiny game or just something that reacts to keystrokes. Starting on Windows, nothing less than a full application or 3D shooter game is going to interest them. Then when they fail to produce a complex program right off the bat, they will be disappointed. It's not more difficult now, but expectations are so much higher that people get disappointed when they can't start producing Word and Quake right off the bat.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    4. Re:Difficulties for beginning programmers by Tim+Browse · · Score: 1

      Again, I don't remember being disappointed that I couldn't produce games or apps like the ones I had on my PET right off the bat.

      I was aware it would take time. Seemed quite obvious really. Anyone who thinks otherwise is going to be disappointed by a great many activities in life :)

  23. This is only worrying by Anonymous Coward · · Score: 5, Interesting

    If apple's apps then call these APIs. It is possible that these APIs are incomplete, experimental, or internal to the OS. If Apple documents these APIs, that means they're obligated to support them and keep them relatively stable between OS releases, etc...

    This isn't quite like the Windows situation for two reasons.

    One, the problem in Windows is mostly that MS's hidden APIs are for (1) very important and basic things and (2) used extensively by MS's in-house apps.

    Two, Apple's been very good not just about keeping competitors on a level API playing field with Apple's apps, they've been very good about actually moving functionality OUT of Apple's inhouse apps and into public APIs. Witness searchlight services, or CoreGraphics. These were functionalities in Apple inhouse apps that Apple decided would be useful to other people, so they sucked it into the OS and made a public API for it...

    1. Re:This is only worrying by Anonymous Coward · · Score: 0

      > Apple's been very good not just about keeping competitors on a level API playing field with Apple's apps,

      How do you know this? The majority of Apple's apps are closed source. Apple fans will believe Apple wouldn't use secret APIs, Apple bashers will believe the opposite. Neutral spectators will just observe that we don't know since we can't look at the source.

    2. Re:This is only worrying by Graymalkin · · Score: 1
      otool -L someapplication
      --
      I'm a loner Dottie, a Rebel.
    3. Re:This is only worrying by Twirlip+of+the+Mists · · Score: 4, Interesting

      If apple's apps then call these APIs.

      Well, they don't, not really. There are two sets of calls he was talking about. There are the calls related to organizing the window hierarchy and splitting it. Nobody uses those calls. They may--this could be completely wrong, because I have done zero reading on the subject--date back to NEXTSTEP. Lots of little things in Cocoa do.

      The other set is related to the rotating-cube transition. Only one process calls that code.

      So these aren't pieces of code that are widely reused within Apple's programs.

      --

      I write in my journal
    4. Re:This is only worrying by IamTheRealMike · · Score: 2, Informative
      One, the problem in Windows is mostly that MS's hidden APIs are for (1) very important and basic things and (2) used extensively by MS's in-house apps.

      Not really. I work on Wine and most of the undocumented APIs I can think of are very boring, in fact they're mostly utility APIs implemented by various teams (especially IE and the shell). Certainly Microsoft tends to err on the side of exposing potentially dodgy APIs rather than keeping them quiet.

      While there are large chunks of undocumented APIs for instance in NTDLL these really are simply internal functions that happen to cross DLL boundaries. They aren't designed to be used from apps. In the case of NTDLL they are simply the internal implementations of the kernel DLL (amongst other things).

      Every OS has these, even Linux. It's just a normal part of OS development.

  24. I'd like to rephrase that as... by Kjella · · Score: 4, Insightful

    ...the distance between a beginning programmer and what you see commercially available is eons apart, compared with before.

    I programmed my C64 with "state-of-the-art" GFX (320x240x16 color, woot), SFX/music (think PC squeaker-like), most else was limited by memory/CPU constraints. In retrospect maybe my AI and gameplay wasn't quite up to par, but I was very close at least.

    One thing is to get a person started - which is hard enough, true, but it's also takes a lot more before you feel you're doing something that feels "cool". Something you could compare to everything that's out there and in some small, limited way be better than. Because once you've done that, you begin to believe you can do it in every other way as well.

    Kjella

    --
    Live today, because you never know what tomorrow brings
    1. Re:I'd like to rephrase that as... by sevinkey · · Score: 1

      //*sigh* the good old days
      unsigned far char* video = (unsigned far char *)0xA0000000L;

      int offset = 0;
      for (int y = 0; y < 200; y++) {
      for (int x = 0; x < 320; x++) {
      int offset = (y << 6) + (y << 8) + x;
      unsigned char color = (unsigned char)(offset & 0xFF);
      video[offset] = color;
      }
      }

    2. Re:I'd like to rephrase that as... by dasmegabyte · · Score: 1
      The C=64 was 320 X 200, kthx. 320x240 implies square pixels...and the TV monitors this machine used certainly didn't have them!

      And I agree...what a beginning programmer learns today is pretty paltry compared to the commercial fare. This is the fault of most programming teachers sticking young coders with the command line THEY learned in. Bullshit. Your first hello world program should be in C#, Visual Basic, Java or any of the dozens of other programs that let you access a windowing toolkit with a handful of commands. In fact, I'll bet the C# Hello World app is on par with in terms of complexity:
      using System.Windows.Forms;
      public class HelloWorld{
      public static void Main(){
      MessageBox.Show("Hello World!");
      }
      }
      You can make usable windows forms your first day coding in .NET/Java. Most of the grunt work is done for you.

      The reason most computing classes start at the command line is that most computing teachers want you to learn basic syntax before getting caught up apocryphal API calls. But I think the rest of us could care less about pointers to pointers...we want to display nudie pics, damnit (System.Drawing.Graphics.DrawImage(fileName,X,Y))!
      --
      Hey freaks: now you're ju
  25. Prerelease? (was: Re:Undocumented API calls) by beavis88 · · Score: 2, Insightful

    I've heard that, generally speaking, some API calls are inserted into production libraries before they're truly meant to be used. Seems like this could potentially be such a case. But I do agree that in almost all cases, APIs should be as open as possible -- plenty of good ideas have come out of independent shops as a result of having good tools (APIs) available and well documented.

  26. You don't need the source by Anonymous Coward · · Score: 0

    to tell what API calls are being used by an application. Just look at what symbols the binary references.

  27. Hacking Quartz and Mach directly? by tyrione · · Score: 3, Insightful

    How is this giving Apple's consumer applications an advantage? What this shows is where Apple has optimized security and performance within the WindowServer and its functionality of Expose in conjunction with the Dock.

    This has nothing to do with Apple utilizing a secret API for all its consumer applications like Final Cut Pro, etc to put it one leg up on the competition.

    This has everything to do with strictly improving the performance of the Operating System and core functionality that all applications may benefit from by the fact they are written for OS X. There isn't a Core Graphics for third parties and a Core Graphics for in-house. Get real folks.

  28. More power but how many know it's there? by SuperKendall · · Score: 2, Insightful

    Sure the programming tools we have now are way more powerful than before, and you can as you say reach a much larger audience.

    But, there are two problems:

    1) How to know that anything is there, and
    2) The widespread display of programming is not really there for the masses.

    For (1), consider than before programming was like an old scooter left on the sidewalk. Anyone could see it was there, pick it up, and mess around. They might not get very far but it gave a feeling for driving.

    Now the scooter is gone, and you have a sleek black porche out in the back alley with the keys in the ignition. Unless you go looking you aren't even going to know the porche is there or that you can use it - there's very little material today that tells kids how cool and easy it is to get into programming. Then of course even if people find the porche many will be too daunted by all the array of features and power to even go forward with driving it - even though the keys are right there! Open up an IDE and just imagine it's the first thing like ti you've ever seen. Even the tutorials can be overwhelming to a kid!

    Now you also brought up the ability to code things that are more widley viewed and used. That is true and is a great appeal, but let's say a kid does learn some kind of server side programming (the only way to do anything really cool - you can only go so far with Javascript). Well how is he going to host it? Where are the super cheap kids hosting servers that come bundled with computers? Do schools do this nowadays (I have not heard of any supporting student CGI space [perhaps that's just as well, it would no doubt be only ASP servers]) Even though potentially a kid COULD write something that would be used far and wide, the actual ability to do so is not there for most people.

    Once people break through the initial hurdles it is much easier to produce stuff now. But the hurdles are far greater than they used to be when I was a kid. Not to mention I doubt I EVER would have got into programming if I were just able to buy the plethora of games they have now instead of writing some of my own from time to time!

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:More power but how many know it's there? by SandSpider · · Score: 2, Interesting

      I don't think the hurdle is as high as you make it out to be. I'll grant you, nobody's spoon-feeding every kid with a computer on how to program it, as it was in my day. On the other hand, there are far more kids who are using computers than did in the old days.

      I suspect a larger problem, if you want to call it that, is that computers do so much more than they used to. It's harder to find something that isn't already written, at least for the beginning programmer. On the other hand, the people who want to program computers tend to have a greater calling to it than just the users. They see the box, they see the potential, and they want to reach out and use that potential. That's what really drew me into programming, not the fact that there was BASIC right there, but that I saw the potential and wanted to exploit it.

      Okay, let's take an example. AIM bots. Kids these days will chat with people over AIM, and they'll run across a bot. Some kids will get annoyed, some won't realize they're talking to a bot, and some will see the limitations of the bot and want to make their own. Once you see that a bot can be made and used by normal people, then the people who are going to want to program them will figure it out. They'll hit google and type "how to program aim bot" or simialar, and poof! The world is their mollusc.

      Parents are also likely to help with this, hopefully. All the parents have to do is say, "You know, you could write programs, too." Even if the parents don't know how, I would be very surprised if some quick work on Google won't reveal answers. I'd also be surprised if kids today don't look up most of their facts on Google. It's easy, it's everywhere, and it's something they are growing up with.

      As for hosting web apps, though it's not a perfect solution, and not as easy to show the entire world as I made out before, it's really easy to do out of the box in OS X. Turn on personal web hosting, drop in some CGI, and play around.

      So: not the same, absolutely, but it's not a wasteland for potential programmers. The soil is fertile, the seeds just need to be dropped in.

      =Brian

      --
      There is nothing so good that someone, somewhere, will not hate it.
  29. I had some helpful tips on this... by Chuck+Bucket · · Score: 3, Funny

    but it was in my book titled "OS X: The Missing Manual" and I can't find it.

    PCB$5%

  30. Butthey did improve on the features by SuperKendall · · Score: 1

    Yes he had to reverse engineer said features, but as I said that also meant Apple could have changged them on a whim - instead improving on them to give DesktopManager better support. The fact they were closed only bolsters the point I was making.

    It's as close to support as you are going to see, until Apple feels the APIs are ready for prime time. There's nothing to say these will not be official API's sometime in the future.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Butthey did improve on the features by Anonymous Coward · · Score: 1, Insightful

      > instead improving on them to give DesktopManager better support.

      What Rich said was that the Set/GetWorkspace functions were upgraded to work with Expose. Supporting DM might be just a side effect.

  31. You don't seem to know Cocoa programming by SuperKendall · · Score: 1

    One side effect of a heavy message-passing style API like Cocoa is that it's super easy to see what apps are calling what libraries and methods. Indeed there are Cocoa utilies mentioned in the article that let you "sniff" such traffic and inject things into messages sent for probing.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  32. Steals GPL source??? by nacturation · · Score: 5, Interesting

    Highlights are secret APIs in OS X for VirtualDesktops, who steals GPL source...

    Where is this in the article? I read the whole thing, then went back and searched for every occurrence of "steal" (zero results) and "GPL". The only part that mentions Virtual Desktops is that CodeTek can't use the Desktop Manager source in their closed source app because it's GPLed. The relevant section is:

    "I still get some emails accusing me of being petty and small minded for GPL-ing Desktop Manager since CodeTek can't easily use my code. That is silly since they are quite capable of re-implementing Desktop Manager in a far better way using my techniques. I haven't tried (nor could I probably) claim control over how people use the APIs I discovered."

    Nowhere does this claim that Virtual Desktops is using, let alone stealing, anything from his source. Unless I missed something here, I fail to see how such a statement is anything more than libel.

    --
    Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    1. Re:Steals GPL source??? by Anonymous Coward · · Score: 0

      "who steals GPL..." I think is meant to be separate from the previous part of the sentence. It probably refers to the comments about embedded developers stealing source.

    2. Re:Steals GPL source??? by saddino · · Score: 4, Informative

      Yeah, you're missing something, but I don't blame you, the write-up is confusing.

      First, the poster mentions: on OS X he created Desktop Manager, the GPL solution for VirtualDesktops

      So, you see, the poster is using "VirtualDesktops" as a name for "virtual desktop technology," not as "VirtualDesktop Lite/Pro, the product from the company CodeTek."

      Second, the list at the end is suppose to be read this way:

      Highlights are:
      - secret APIs in OS X for [virtual desktop technology]
      - who [is it that] steals GPL source [?]
      - why beginner programmers are at a disadvantage now


      Thus, it's just a list of interesting items from the interview; it isn't supposed to be read "blah blah blah CodeTek, who steals".

      Finally, the answer to the second "highlight" -- is indeed in the article posed as:

      You mentioned all of your code being released as GPL, and much of it isn't throw-away stuff. Do you ever worry or wonder about it being 'lifted' and incorporated into proprietary software?

      So, yep, it's in there: "lifted" instead of "steals." Interesting answer from Rich, too.

    3. Re:Steals GPL source??? by nacturation · · Score: 1

      Thanks for the clarification. That makes much more sense. I guess I incorrectly parsed the ambiguous paragraph, and it makes me wonder how many others read it that way as well.

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    4. Re:Steals GPL source??? by pritchma · · Score: 0, Troll

      Its a shame I can't mod the parent +1 astroturf...how about:

      "Interestingly CodeTek uses this exact same bit of code for their latest VirtualDesktop program."

      Seems pretty clear to me.

    5. Re:Steals GPL source??? by nacturation · · Score: 3, Informative

      Its a shame I can't mod the parent +1 astroturf...how about:

      "Interestingly CodeTek uses this exact same bit of code for their latest VirtualDesktop program."

      Seems pretty clear to me.


      Perhaps you should read it again, in context this time:

      "To allow DM to modify windows I had to use a little bit of code by Jon Rentzsch which allowed me to stick a bit of DM inside the Dock process (see later question). This bit of code communicates with the main app and performs much of the magic you see.

      Interestingly CodeTek uses this exact same bit of code for their latest VirtualDesktop program."


      The "exact same bit of code" referenced is obviously the Jon Rentzsch code, which you can find here. As you'll note from the site, it's released under a BSD license which can be incorporated into closed source projects. Since the article summary referenced "who steals GPL code" this doesn't even apply, now does it?

      How's that astroturf feeling?

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
  33. Clarification - not graphical... by SuperKendall · · Score: 1

    Sure you can still write command line apps in very little code. But you want things with graphics, winodws, etc. (which is the norm to have a "real program" now) and it all quickly grows beyond that.

    And as he said, anything with graphics is even generally trickier. And on Windows how could they have compiled ANY of your code Christmas day without a network connection?

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Clarification - not graphical... by jlaxson · · Score: 1

      Interface builder on Mac OS X makes GUI programs painless. Hello World with zero lines of code. You could even have a button that displays hello world with zero loc.

      --
      On Apple Input Peripherals: They're okay, I guess, but I was really hoping for a one-key keyboard and a 109-button mouse
  34. No virtual desktops as there are multiple desktops by Anonymous Coward · · Score: 2, Interesting

    Why doesn't Apple support multiple virtual desktops?

    Because that would be confusing as there are real multiple desktops. You can have multiple desktops active at the same time. Say one for surfing and loading trojans by accident and another for online banking and you know that they are safely separated from each other.

    It's called Fast User Switching, but realise that they are all active at the same time. Adding virtual desktops which are not separate would confuse the user and water down simple secure separation of tasks functionality.

    Oops, I thought I did my finacnes on another desktop but I guess I've accidentally shared it with this guy who send me a funny application via mail or chat, because the separation was virtual/visual only.

    You can have separate desktops on Mac OS X and they are really separate, that is a major plus!

    Sure I would like multiple desktops within one user account but they should be separate and only have user permitted information exchange, nothing automatically allowed. Yes, that would be called sandboxing and I advocated sandboxes for Mac OS 10.3. I hope they will be in 10.4 as a 2005 surprise because it would stop trojan applications and even protect against a bug in the webbrowser or email applications if those would run inside their own sandbox.

    Yes, you can still ask Apple for Sandboxes as they have introduced the basic technology in 10.3 and still have many months before 10.4 is ready.

    Dennis SCP

  35. CodeTek versus Desktop Manager by geordieboy · · Score: 1

    I haven't tried Desktop Manager, but I use CodeTek Virtual Desktop Pro on my Powerbook. I have to say, looking at the screenshots on the DM website, I don't particularly want to switch. The CodeTek pager is much much nicer, and I certainly don't want a big volume control style white icon in my face every time I switch a desktop. But maybe DM is a bit faster - CVD can take a second or two to switch desktops. I also need perfect integration with X11, which CodeTek has.

    --
    The world is everything that is the case
    1. Re:CodeTek versus Desktop Manager by TheRottenApple · · Score: 1

      Since you already paid, I guess there's not much reason to try DM. However, your belief that the display is the *only* configuration available couldn't be more wrong. As in, pager is sizeable, can be auto-hidden, etc. Plus, with DM on the menu bar, desktop switches happen instantaneously, no transition effect overhead is incurred. I've been using DM for months and couldn't live without it.

    2. Re:CodeTek versus Desktop Manager by vruba · · Score: 1

      The big volume control style white icon is quite annoying, but it can easily be turned off. In my experience, Desktop Manager is quite fast overall (if you turn off the eyecandy, of course), and works with X11. It still feels a little rough in places, but it's worth trying.

    3. Re:CodeTek versus Desktop Manager by geordieboy · · Score: 1

      Well you persuaded me to give it a try at least.

      --
      The world is everything that is the case
    4. Re:CodeTek versus Desktop Manager by mrchaotica · · Score: 1

      They call those "bezels", by the way.

      In fact, the images used for the system ones (like volume and brightness) live in /System/Library/CoreServices/BezelUI/Images, and you can customize them just by changing the pictures.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  36. Not a missed feature by Da+Penguin · · Score: 1

    I tried this, but frankly, even being a long-time Linux user before moving to mac, I just find this feature confusing. I am probably not in the right mind-set, but I like to switch cleanly between my applications. I do not see the need of having, say, my pdfs on one desktop, web browser on another, mail on another, programming on another. I would tend to have one or two applications per desktop, and I can already switch between these simply with cmd-tab and hide others with alt-cmd-h, etc.

    1. Re:Not a missed feature by dglo · · Score: 1

      I typically work on one or two major projects in parallel, along with bug fixes for previous projects and the occasional non-work hack. For each of these I have 1-3 terminal windows and one or more emacs windows.

      I also have my RSS reader and assorted web pages open at the same time.

      Keeping these different tasks in separate desktops allows me to have 20-30 windows open without getting lost.

    2. Re:Not a missed feature by Da+Penguin · · Score: 1

      Out of curiosity, are you on OS X?
      If not, the key point here is that on OS X windows are organised much differently. cmd-tab switches between applications (so between, say, terminal and emacs), while cmd-` switches between windows belonging to that application. Through in exposé and you are set. This is one of the things I miss when using other systems: being able to switch between all things in one app, to all things in another app.

      That said, your situation would probably make good use of virtual desktops, but it would take me personally a while to get used to. My point was that my tasks are split nicely between applications. Mail in Mail, web in Safari, math in Mathematica, planning in iCal, programming in xcode/terminal, reading papers in preview.

    3. Re:Not a missed feature by dglo · · Score: 1

      Out of curiosity, are you on OS X?

      Yep. Because I have so many windows for the same app, it'd be really clumsy to use cmd-` to find the right one.

      My work environment has been X-based since '89, and I've used virtual desktops since vtwm came out in around '90.

      I'm using CodeTek's VirtualDesktop rather than DesktopManager, because VirtualDesktop supports 'focus follows mouse'. After switching to OS X, I had a couple of months of misery before CodeTek brought out the beta which supported 'focus follows mouse'.

  37. Hmmm... "SECRET APIs" by callipygian-showsyst · · Score: 1
    Reminds me of another OS Vendor!

    1. Re:Hmmm... "SECRET APIs" by Anonymous Coward · · Score: 0

      You are so smart. Now go back to watching anime and reading slashdot.

      WE (the intellectual elite of the world, the posters of Slashdot) don't support oppressive corporations who steal open source software and LINE THEIR POCKETS WITH GOLD!

  38. For example... by Nurgled · · Score: 1

    Indeed, "nick" can mean anything from shoplifting to just borrowing a pen:

    "Some kid nicked a bunch of DVDs from the video store."
    "That guy nicked my girlfriend."
    "Ay mate, can I nick a screwdriver for a second?"
    1. Re:For example... by Anonymous Coward · · Score: 0

      or even, if you want to use it in a different way

      'oi, you're nicked.'

      Anyone remember The Bill?

  39. Secret APIs? by Anonymous Coward · · Score: 1, Insightful

    Highlights are secret APIs in OS X for VirtualDesktops

    OK... time for you /.ers to start bashing Apple as hard as you do Microsoft for secret APIs, or are you guys a bunch of hypocrits?

    1. Re:Secret APIs? by aristotle-dude · · Score: 3, Informative
      Um no, considering Apple a history of releasing those Apis once they are mature enough to use. A recent example of this was Core Image and Core video which they had used in motion.

      I believe these API's in this case are secret because they are still in flux and not ready to be used. They probably still have bugs and memory leaks in them.

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
    2. Re:Secret APIs? by Anonymous Coward · · Score: 0

      Considering that the situation is entirely different and the thing being complained about with Microsoft was not merely the fact that there existed undocumented functions in the windows operating system, no.

    3. Re:Secret APIs? by Anonymous Coward · · Score: 0

      You mean exactly like MS has done over the years?

      And the "Waiting till they are mature" argument is just another way of saying "Waiting till we have a strong lead ourselves".

      So yes, you ARE a hipocrit!

    4. Re:Secret APIs? by aristotle-dude · · Score: 2, Insightful
      Excuse me? Apple has not shipped Motion yet and they are already making Core image and Video available now. Yeah a big lead time. What is it exactly you are looking for? Do you really expect them, to release the API before they started work on Motion? They developed the tech for Motion and then saw it would be useful for other developers as a public API and so they released it before Motion has even hit the shelves.

      Let's see, if Apple released them earlier, you would be bitching about how buggy they were or that Apple kept on changing the API interface on you.

      Why don't you be a man instead of an anonymous coward and sign up for an account?

      --
      Jesus was a compassionate social conservative who called individuals to sin no more.
  40. Wish parents posted with real-world anecdotes by SuperKendall · · Score: 1

    You may be right. One thing I wish is that I saw more posts from real parents with real kids - I have no kids so it's hard for me to have a feel for what kinds of vectors might lead a kid to program nowadays. My apologies if you are a parent, I just was not sure.

    It seems like the decline in CS majors would have something to do with this barrier, but perhaps it's just enough programming going into other areas of study to satisfy most kids interested in programming in addition to other topics.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Wish parents posted with real-world anecdotes by SandSpider · · Score: 2, Informative

      I'm not a parent, but I'm remembering when I was a kid, and how my parents were. They could have just gotten me a 2600, but they got me a TI-994. It had some games, but they encouraged the programming aspect as well. When they bought a macintosh, they got MS Basic, which certainly wasn't included, so I could keep up with that. So I have hope.

      There's also a program here in Charlottesville called Computers for Kids, which gets kids in low-income or similar situations teamed up with volunteers in the computer industries. You meet with the kids once a week, and teach them and lead them to do the things that they are interested in. If they lean towards programming, you can help them in that way. If they stick with it for the appropriate amount of time, the kids get a free computer out of the deal. So there are ways to help out even if you have no kids of your own.

      I see the decline in CS majors as more the lack of Making Money Fast than in lack of initial programming interest. I think a lot of people got into CS who probably shouldn't have, or at least many of those people who did will not be ultimately satisfied by a career in programming or Comp Sci. I am hoping that the future generations of programmers and computer scientists will be a higher percentage of people who are keen on programming, and not just doing it because that's where the venture capital lies.

      =Brian

      --
      There is nothing so good that someone, somewhere, will not hate it.
  41. Sure it's a side effect... by SuperKendall · · Score: 2, Interesting

    But theyt could also just have changed the names of these calls as well. Do you think the Apple engineers are not cognisant of the ways various third party apps are using even undocument features? They may not support it but they are sure to be monitoring it, and probably even figureing from the ways in which people are trying to call the system how they should enhance the calls further into an API for public consumption.

    The original poster sort if implied Apple was hostle to other ways of doing things - but I would say that at worst they are indifferent, and there is some evidence they are a little better than that in reality.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  42. Focus Follow Mouse... by isaac · · Score: 2, Interesting

    I'd love to use Desktop Manager instead of Codetek Virtual Desktop which has always felt iffy and bloated to me.

    Alas, multimonitor support is still pending, and Codetek gives me what I need even more than virtual desktops - Focus Follows Mouse!

    I sorely miss good focus-follows-mouse support; I know it's possible to enable it for X11 and Terminal.app, but only CTVD seems to allow enabling focus-follows-mouse across the whole system.

    -Isaac Salpeter
    iVillage Operations

    --
    I am not a lawyer, and this is not legal advice. For Entertainment Purposes Only.
  43. Honed to a fine sheen? by jschottm · · Score: 1

    Having a single button in DVD Player and iTunes for both fast forward and chapter skip while QuickTime has separate buttons is honed to a sheen? Ever try to advance just_a_little in a DVD? There's a reason that 99% of the remotes for standalone DVD players have separate buttons for them. They're two completely different functions.

    Not having decent support for the concept of "home" and "end" is a fine sheen?

    Having the Safari close tab button be on the tab itself so that a slight mistargetting closes the tab is a well designed UI? (Yes, I know Konq does it as well, and it's wrong there too.)

    Apple does some things very well, but they leave a lot of rough edges that the fanatics don't like to see.

    1. Re:Honed to a fine sheen? by Anonymous Coward · · Score: 1, Interesting

      Now tell me how do I close a tab in Mozilla if it's not the one I'm currently looking at??? You can't.

      Don't get me wrong, I love Mozilla to death but I prefer the way Safari does the tab close button.

    2. Re:Honed to a fine sheen? by Dylan2000 · · Score: 0

      Middle-click (click the mouse wheel) on it. That's the same button people generally use to open tabs.

      I'm not normally one to say RTFM but your triple-question mark sequence and definitive "it's impossible" assertation indicate an aggressive, belligerent attitude and that, combined with an - on its own - perfectly forgivable ignorance, have mixed together and fermented to create such an offensive little post that i feel a certain sentence coming out of my fingers.

      I feel it, I don't think I can stop it, no... it's too late... here it comes...


      READ THE FUCKING MANUAL BEFORE YOU GO AROUND WHINING LIKE A FOUR YEAR-OLD! THE SOLUTION EXISTS BUT YOUR STUPIDITY BLINDS YOU TO IT!

      Like I say, I normally wouldn't write that but the compulsion was overwhelming. Sorry for any inconvenience. You may continue with your activities now. Thank you for your attention. Happy to help.

      --
      Build your own website - full service homepage system your m
    3. Re:Honed to a fine sheen? by krel · · Score: 3, Insightful

      I just thought I'd add my 0.02$;
      The close buttons on Safari's tabs are a feature I can't live without. Call me petty, but I've used Firefox's one close button on the far right, and I feel limited when I can't open up twenty tabs without looking at each of them before I can close them.
      I have a huge list of people's blogs, and I open them all at the same time in countless tabs. There are some really boring people there, and I like being able to close the tab without having to view the page.
      It's those little things that matter.
      Also, you have to be really clumsy to accidentally click those tiny little exit buttons on the tabs.

      --
      karma: ouch!
  44. Yes by SuperKendall · · Score: 1

    You have given some minor nitpicks (though you are dead wrong about tab closing, they have got that one right), but in general Apple tries to work over all the angles before they release something. I am more talking conceptually than in the actual product shipped.

    Sure they miss some aspects and have bugs or bits of UI they could have improved on, but in general the software and OS they produce is a lot more polished than most things and is certainly more consistant in general.

    My own pet peeve UI wise is the printer dialogue which I think is only marginally better than nothing, but that still doesn't mean I consider the OS as a whole a pretty well polished bit of work.

    Frankly, I have never seen a UI for virtual desktops that I *loved* - I have used a number that I tolerated, as they were useful. But nothing that I used to the extent I use Expose because it is simply well thought out and very easy to activate.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Yes by jschottm · · Score: 1

      Those were a few things off the top of my head. There are many more. Flower(whatever you silly mac people call it)-Tab doesn't work the way that it does in the other major operating environments, and Apple intentionally broke the ability to change it to match. This may not be a big deal if all you ever use is a Mac, but the vast majority of people don't. Flower-Tilde sort of duplicates some of the functionality, but that's left to the application writer to do, leading to inconsistancies. And most that do impliment it have it cycle through a circular list of all instances of the program rather than the most recently used.

      And no, I'm not wrong on tab closing. Name another application where misclicking on a selection tool can cause a desired window to be lost without confirmation. If I miss the paint tool in Photoshop by 3 pixels, I don't accidentally close the image I'm working on. Would you say that having a little "delete" feature on every file listed in Finder that could easily be clicked by accident would be a good design?

      Right clicking (or control clicking for those Mac users who are petrified by the concept of more than one mouse button) to bring up a menu that offers the ability to close that tab without viewing it is the correct behavour. (Or rather, the better - there could be an even better one out there still.)

      Beyond that issue, it's a basic violation of Fitt's law. By duplicating a common widget, the target size of the actual tab is reduced, making targeting it with a mouse harder and decreasing the space available to deliver useful information - what the tab has in it.

      Expose may work for you, but it doesn't for me, which is the core of my problem with Apple - they expect you to mold your hand to fit the tool rather than molding the tool to fit my hand. I have so many different tasks at work that virtual desktops are the only thing that keep me from being buried under taskbar clutter. Even with tabbed browsing, I have over 40 windows open right now. Virtual desktops lets me segregate those into a graphic design desktop, a database desktop, a web development desktop, a research desktop, and a sysadmin desktop. The sheer number of windows would make Expose unusable for the same purpose.

    2. Re:Yes by SuperKendall · · Score: 1

      Those were a few things off the top of my head. There are many more. Flower(whatever you silly mac people call it)-Tab doesn't work the way that it does in the other major operating environments, and Apple intentionally broke the ability to change it to match. This may not be a big deal if all you ever use is a Mac, but the vast majority of people don't. Flower-Tilde sort of duplicates some of the functionality, but that's left to the application writer to do, leading to inconsistancies. And most that do impliment it have it cycle through a circular list of all instances of the program rather than the most recently used.

      Now you are talking about cross-system consitancy? Frankly I'm not even a fan of in-system consistancy in all cases, you are really reaching there just to try and make a point.

      And no, I'm not wrong on tab closing. Name another application where misclicking on a selection tool can cause a desired window to be lost without confirmation. If I miss the paint tool in Photoshop by 3 pixels, I don't accidentally close the image I'm working on. Would you say that having a little "delete" feature on every file listed in Finder that could easily be clicked by accident would be a good design?

      Tabs are more temporal things than files however. Files are not deleted often, whereas in the case of tabs they are generally not very perminent either (at least how I use them) and so it's important to be able to delete them as easily as possible. Since the two most prominent use cases for tabs are "switch to" and "remove", it makes perfect sense to have a control there to remove the tab - and I have never had a problem hitting said control by accident.

      Right clicking (or control clicking for those Mac users who are petrified by the concept of more than one mouse button) to bring up a menu that offers the ability to close that tab without viewing it is the correct behavour. (Or rather, the better - there could be an even better one out there still.)

      Can't resist the dig at the "one button mice" eh? Pretty childish I'd say. My mom has problems with her hands and actually switched to a one-button mouse for comfort, I guess she must be just too cowardly to keep using multiple button mice.

      It would not be the "Correct behaviour". That would be your "preferred behavior". Since I am more than 100% certain that in fact I would not like it as much (having used Mozilla tabs that behave "correctly") I am just as sure that your definition of "correct" is utterly wrong. I'm sure it's wrong for me, and fiarly certain based on user observation the correct behavior is in fact to keep the ability to remove a tab close at hand.

      Beyond that issue, it's a basic violation of Fitt's law. By duplicating a common widget, the target size of the actual tab is reduced, making targeting it with a mouse harder and decreasing the space available to deliver useful information - what the tab has in it.

      There needs to be a balance though, it needs to present data about the tab and a way to remove said tab as efficently as possible. Fitt's law is great to a point, but you can't start eliminating useful controls just to give more room for other things in blind obedience to said law. Lots of things about interfaces today do not follow Fitt's Law at all and I am very sure the world would not like the result if they did. Why do title bars not expand to fill as much screen space as possible? That sure would make them easier to select! And that submit button on the bottom of the page - why that could be 1000X the size it is now!

      What good is Fitt's Law if it makes a system less usable? Is the point to maek a system easier for a user to use or what? The very small space the delete control takes up more than compensates for a smaller target by the usefullness of not having to bring up a menu every time and navigate through said menu you want to close a tab.

      In fact I would say the tab closing feature plays a large part in my using Safar

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
  45. Lots of things woul dfit the bill, but what will? by SuperKendall · · Score: 1

    Sure Squeak will fit the bill. As will a million other choices, indeed that's part of the issue I think - before you learned basic to learn programming. Now you could take a hundred different paths, and it's hard to know which is best when you don't even know you're interested to start with!

    As for memory management increasing the hurdle - I don't buy that. Unless you got crazy with PEEK and POKE there was no goo dway to crash a Basic program either. And BASIC had no memory to free so it was much like modern languages in that regard as well. It was just more omnipresent, you knew it came with a computer, and it was more used as well since computer magazines would often print handly little utilities in BASIC that could actually perform some task of use. Imagine PC World nowadays actually printing code!

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  46. That would be very handy... by SuperKendall · · Score: 2, Interesting

    Now you're talking! Rather than bemoan the lack of virtual desktops, I think it's more useful to say "how can we make one desktop even more useful and usable?". That would be a great addition to Expose that would make it even more useful, even with a lot of windows. It would even elminiate the annoyance of having to define how a user moves windows between rooms or what rooms they show up in, as when new windows were open you could just shuffle them where you like with (as you say) some memory of where that was by app/title in case you re-opened them. You could have piles of stuff spatially related to a project, and possibly even some way to move a whole pile.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:That would be very handy... by Steve+Cowan · · Score: 1

      You're on to a really interesting idea - an alternate arrangement of windows invoked by function key. The only problem: the whole concept of exposé is that it shrinks your windows and moves them just enough that none overlap each other.

      That in itself is really useful, because you get to see everything you're doing, at any time, and bring a different task back to the front.

      What if it could be invoked with a modifier key, so that (for example) hitting command-f9 the first time causes all windows to shrtink just as if you had hit f9 by itself. But if you continue to hold command you can move and resize the shrunken windows. As soon as you click in a window without the modifier key, they restore to normal size and the window you clicked comes to the front. Hitting command-f9 again would put the shrunken windows back the way you left them, even if they overlapped a little.

      The same modifier could apply to f10 (perform this operation on foreground app only).

      The only problem with this whole scheme is what happens if you have opened new windows since you last invoked this feature. Does it find a tiny space to stick the new windows in? Does it forget all your changes and just act like you hit it with no modifier?

      I'm really excited about this possibility, and I hope somebody from Apple sees this and thinks it's exciting too. To paraphrase The Steve, the Mac is about simplicity on the surface, although power is within your reach when you need it.

  47. Preaching to the converted! by SuperKendall · · Score: 2, Insightful

    I've been using IB and Xcode so I agree it's very powerful...

    However you must admit it takes a little work to get into! I don't think I could just point a ten-year-old at the thing and say "here you go!". You have to understand about message passing, how to link components, and so forth.

    And as I said it would be nice if Apple made reference to such things existing in the manuals you get with the computer. Most people probably have no idea there are there.

    Applescript Studio is probably a good starting point for many people, perhaps they will push that more for newcomers to the system.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Preaching to the converted! by fiftyfly · · Score: 1

      Other options might include something like python and anyGUI. There are lots of similar projects they're just not often bundled with machines in the retail sector.

      --
      "Sanity is not statistical", George Orwell, "1984"
    2. Re:Preaching to the converted! by Anonymous Coward · · Score: 2, Insightful

      " I don't think I could just point a ten-year-old at the thing and say "here you go!""

      I think a 10 year old would be best advised to open one of the simple example projects, like "DotView", and making small changes.

      Change the color of the background. Change the width and height of the dot. Both can be done in drawRect:, which is the method of interest at this point in learning Cocoa.

      From there, the kid can learn a little about mouse events, because there's a mouseUp: method, which lets you move the dot that's drawn.

      Once the kid has a grip on this, he might try changing to a different shape instead of a dot, learning about NSBezierPaths.

      A likely progression would be learning how to load a picture and draw *it*, instead of drawing a shape. That'd lead to learning about NSImage.

      It's all about baby steps. A kid could learn quite a bit from this one project, which would involve editing a single class implementation with half a dozen or so methods. It's also well documented.

      Yes, the deep end of the pool is very deep, but there's a lot of room to play at the shallow end.

  48. Think for me apps have replaced that need by SuperKendall · · Score: 4, Interesting

    I think over time applications themselves have to some extent replaced the need for virtual desktops. You mention managin 50 windows would be hard to use with Expose (actually I don't think it would be that bad, especially if you were mostly using the grouped Expose) but between tabbed browsing, and IDE's that really only have a few windows but easy code navigation reduce the number of windows you actually have to take care of.

    For project sets, I generally tend to close open windows nad have project related Finder windows open - threating them sort of like rooms. Since it's so quick just to open a document and not have to think if the program is open or not, having an icon in Finder is almost as good as a live window.

    Even when I was using virtual desktops more heavily I was using programs like Emacs (actually I still use Emacs very heavily) where having 200 files open was as easy as two.

    I'm not saying your pattern of working is any better or worse than any other, evryone thinks in different ways - I'm just trying to explain how people can be OK with no virtual desktops and still using working on a lot of projects at once.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  49. I think we are all missing something here by One_6453 · · Score: 2, Interesting

    I dont think it would be in apple's vested intrest to include virtual desktops with OSX because of these The new 30" displays..

    I mean why would they include a feature that (except for expose) that would take away from the main selling point of these huge displays i.e acres and acres of display real estate?

  50. But php and perl are at least bundled. by waif69 · · Score: 2, Insightful

    On my powerbook, it came with php and perl. I can utilize the man pages for info. But documentation for the beginner is still scarce. I knew what to look for and where to go at least.

    Programming is not introduced to students like it used to be. Now HS students are taught applications, not how to make the computer do something that someone else hasn't already installed onto it. Our youth are being deprived of the education on computers that was offered in the 80's.

    I, for one, will instruct my children on the creation and use of various scripts and languages for their own personal use. (I will teach them about GPL, of course.)

  51. from a WWDC attendee by Anonymous Coward · · Score: 0

    One of the reasons why they don't want to encourage people to use hidden APIs is because they might want to change it. If they endorse their use, then they might be stuck with supporting a busted API for the lifetime of the product. Apple likes to boast good backwards compatability within OS X versions.

    Any public API has been fine tuned and deemed worthy.

  52. You can do real time 3D in JavaScript by KalvinB · · Score: 2, Insightful

    Link in sig.

    I'm assembling a number of tutorials on doing software rendering using JavaScript. I used to think it wasn't good for much but after doing textured polygons with a color key my opinion has changed. Since it's all software the concepts can be transfered to any language that can plot a pixel, do math and store an array.

    I've also written a graphical adventure game in TI BASIC as well as some pretty basic 2D and 3D demos. Most of my graphics stuff is now done in OpenGL. I've worked with DirectX quite a bit in the past.

    Programming is no harder to get into now that it was X years ago. It's just that kids think they can do anything so they try to start out making the next Quake or MMO instead of starting with the basics and working their way up.

    You can also find QBasic and QuickBASIC on-line and Libraries still have books on programming in the language.

    The problem isn't that these languages aren't available. It's that they aren't "cool" and everyone tells them they absolutly must start with a C style language or they'll forever be corrupted. So they go to C and find out they can't do anything interesting so they just quit. If I had been forced to start with C, I wouldn't be a programmer.

    Ben

  53. This guy has a girlfriend?! by jennifer_l · · Score: 0

    If that plasma ball line worked, there's hope for us all!

  54. who steals GPL source by Anonymous Coward · · Score: 0

    "I've always been a bit of a reverse-engineer (c.f. for example 'libdvdnav', a library I wrote to allow Linux media players to play DVDs which is now used in xine and other similar players."

    Humm, you mean 'a bit of a plagiarist', right Rich? As you 'borrowed' most of that code from those that did the work... i.e. the Ogle DVD player people.

    $sed -i -e's/ogle/xine/g' *.[hc]

  55. Space desktop manager by jbolden · · Score: 2, Informative

    Just to throw in $.02 here. The project seems dead but I've been using space space.sourceforge.net for years. It does very nicely as a virtual desktop manager and it is open source (QPL).

  56. Imagine you are ten years old by SuperKendall · · Score: 4, Insightful

    Lots of people are mentioning PHP and so forth.

    You are perfectly right that Basic was really a scripting language. But try to imagine you are ten years old.

    PHP is very easy to download. But how do you hear of it? How do you even know what it is to download? Even as a professional programmer I would have said to use PHP for web apps but not to learn programming with.

    Also, what were you trying to program for? When I was a kid I did not really program just for the sake of programming. I perhaps wrote a small utlity that did some calculation I was interested in. My cousin did fractal generation. I might type in a game from a magazine and decide I wanted to improve on it.

    So now you have a kid not knowing here to start, because there is not central starting place. Then you have the will of the kid to even figure out where to start, the barrier of having enough interest to create something he cannot just download.

    Perhaps things like Mindstorms are taking the place of traditional programming. I'm not really sure. But it does seem like a kid could not be led into programming as much by accident anymore, he would definatley have to seek it out. And that will always eliminate some people from the path, that might otherwise have liked programming quite a bit. Obviously people do still learn programming now, where are the sixteen-year olds and how did they pick up programming? That's what I'd like to know.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Imagine you are ten years old by BlueYoshi · · Score: 1

      I think that the easiest language to start if I was 10 is for now javascript

      You can do nice stuff easily and you allways find a browser installed with javascript support

      --
      "Use cases are fairy tales..." I. S. 2005
  57. MVC and MFC by Anonymous Coward · · Score: 0

    FTFA: By similarities between Cocoa and .NET, are you talking about the Model-View-Controller (MVC) paradigm, or something deeper?

    MVC in some ways (although that goes back to MFC as well)


    Errr, doesn't MVC (Model-View-Controller) go back to SmallTalk? Contrary to some opinions, MFC contains no innovations that I'm aware of.

  58. AppleScript & Script Editor by MacDork · · Score: 1
    The thing about computers before was that it was super easy to just write ten lines of code and have something happen. Now you have to hunt down an IDE or an editor, and chances are you're writing a lot more than ten lines even for Hello World!

    Open /Applications/AppleScript/Script Editor.app and type in:

    display dialog "Hello World!"

    Click run. Yeah, Windows is almost as easy to use as a Mac ;-)

    1. Re:AppleScript & Script Editor by mst76 · · Score: 1

      > Open /Applications/AppleScript/Script Editor.app and type in:
      > display dialog "Hello World!"
      > Click run. Yeah, Windows is almost as easy to use as a Mac ;-)

      In this case it actually is:

      Open Notepad and type in:

      MsgBox("Hello world!")

      Save as hello.vbs, click and run.

  59. Re:I think we are all missing something here by aristotle-dude · · Score: 1

    Those screens are useful for graphic artists involved in HD content creation you ninny. Exposé and virtual desktops will not help those people much.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
  60. Choice by gidds · · Score: 4, Insightful
    I think it comes down to the matter of choice.

    Now, in general, we tend to think of choice as a Good Thing(tm). But it's not always so -- e.g. when choice means incompatibility, confusion, fragmentation, duplicated effort.

    For example, here in the UK we have (basically) just one mobile phone system: GSM. That terrible restriction on our liberties means that mobile phones can work on all networks, and there's coverage almost everywhere. Result: mobiles are cheap, and just about everyone has one. In the US, so I gather, there's the wonderful free choice of GSM, CDMA, and goodness knows what else. Result: expensive phones, no coverage, lots of vendor lock-in, and mobiles are less popular. Lack of choice can be a good thing.

    The computing world is surprisingly close in terms of interfaces, APIs, and protocols.

    It's less so in terms of GUI features, admittedly, but some of the same economies of scale apply. However, I think Apple's principle here is that if a feature is done right, then people won't need alternatives.

    Far better to have one option that works right, than ten competing alternatives, none of which does the job properly. Easier to learn, easier to document, easier to code to, easier to administer, easier to support.

    Now, in this particular case, I do miss virtual desktops in OS X. (Codetek's is just too slow with the number of windows I have, and I can't use Desktop Manager in my 10.2...) I don't think Apple have come up with a better solution to the problem it solves. But I'm right behind most of Apple's other decisions. Simplicity and elegance are underrated virtues.

    --

    Ceterum censeo subscriptionem esse delendam.

    1. Re:Choice by dekeji · · Score: 1

      However, I think Apple's principle here is that if a feature is done right, then people won't need alternatives.

      Yes, but the definition of "right" depends on the users and target audience. That's why we all drive different cars, eat different foods, watch different movies, wear different clothes, etc.

      The free market solution is to have everybody offer what they think is "right" and to let end users make informed choices according to their own needs. It's unfortunate that that option doesn't exist right now when it comes to software: both Microsoft and Apple still have unfair advantages in the market resulting from their size, which allow them to impose "right" solutions on users that aren't necessarily "right" for them. But that's going to change in the long run.

  61. Not PHYSICAL by SuperKendall · · Score: 3, Insightful

    Everyone here seems to be totally missing the point I am making. Yes there are a million tools around now. Yes there are 800MB of docs that ship with the Mac.

    But think people, think like a ten year old!! You don't even know you want to program - and nowhere in the docs that come bundled with your shiny new computer (Windows or Mac) does it mention that tools to do so are bunlded with the computer (Mac) or that it is easy. On the Mac the development tools are not even in Applications, but under /Devloper - so you'd have to know to look there.

    And then once you're starting, you have to know about editors and compilers and IDE's and so forth to do all the things people are proposing. There's nothing truly basic to guide you through the first few steps of what is going on.

    If I'm wrong then I would LOVE for all of the parents who are not programmers themselves and have kids that are picking up programming spontaeously to tell me how things are working out. But instead you have me, who has no kids, hypothizing a probem with kids being able to pick up programming easily, and a bunch of people who have obviosuly been programming for years and ALSO seem to have no kids, stating it's not the case and programming is super easy to get into. Our problem is we know to much, and have lost site of what you have to know even to get to the point where we can enter that eight line Java/C#/Applescript/PHP/Perl/Haskel/Ruby/Python program!

    Yes it's all very easy once you choose a path and get started, and easy to dabble in multiple languages. But it's still harder than it used to be to go from the "I don't know what a program is" to "hey I just ran my first program" than it sused to be.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  62. what really concerns me is... by ewe2 · · Score: 1

    where do i get hold of a plasma-ball?

    --
    insecurity asks the wrong question irritation gives the wrong answer
  63. This seems to be a desired feature. by solios · · Score: 1

    Me, I'm just pissed that not everything (games, some screensavers, etc) supports multihead. I run three displays on my workstation- you'd be surprised just how many apps don't support the real estate. :-|

    As an artist who hangs with geeks, I seem to have become the point man and go-to guy for several linux/solaris friends who've bought powerbooks over the past couple of years.

    Inevitably, after they get over virt-shock and set the terminal back to some acceptable defaults, they want to know if they can change the focus model and if so, how. That sort of thing has always been completely counter to my workflow- don't need Illustrator or Irssi popping up when I'm rolling between a texture file and the target document.... it would drive me mad. I've disabled it on a couple of Windows machines I had to deal with awhile back (machines with some sort of extension that enabled this feature installed).

    I was dead-set on hating focus-follows-mouse until I used IRIX.

    Good to know that there's at least some option for the mac. :)

  64. BASIC is still there by dekeji · · Score: 1

    If you want to use that kind of environment, it's still there. You can run Apple II Basic in emulation (faster than ever) or run native Basic implementations. If you want something more modern, there are plenty of environments that make getting started with programming easy: Python, Matlab, PLT Scheme, etc.

    But if you want to write real-world applications, you have to deal with complexities: when there are dozens of applications, windows, and GUI elements on the screen, you just have to know what that means. It's like driving on a private racetrack (where the choice of destinations is limited) and driving on public roads (where there are lots of choices, but you need to know how to live with other drivers).

  65. What would Andre 3000 say? by Anonymous Coward · · Score: 0

    Thank ya' Jesus! Thank ya' Lord!

  66. Virtual Desktop Manager for Windows by a5cii · · Score: 1

    Can be found here http://www.microsoft.com/windowsxp/downloads/power toys/xppowertoys.mspx along with other powertoys and tools all free of charge and quite small to download

  67. Re:No virtual desktops as there are multiple deskt by prockcore · · Score: 1

    It's called Fast User Switching, but realise that they are all active at the same time.

    Fast User Switching is the most misnamed feature ever. It should be called flashy, really fucking slow user switching.

  68. Expose kicks your brain's ass. by CoolGuySteve · · Score: 1

    I find that compared to virtual desktops, Expose is much more destructive on a cognitive level.

    When I'm programming in XCode and I want to get at a window that's covered by the browser or something similar, I first have to hit a key or mouse to a hot corner and watch everything change to new and unknown positions, examine the windows, and visually identify the one I want.

    Or I have to click the icon on the Dock. This makes all the windows for that application come up, covering other stuff that I needed to look at. So then I have to play window janitor to see that header file that I quickly more'd or whatever.

    In either case, I'm dealing with a lot of things that are not related to that function call I was looking for and subtle errors can result.

    With Expose, the fact that you're visually tracking windows that are flying all over the place, changing size, and appearing in different positions most of the time doesn't help when you consider the context switching your brain has to do to process all this information. It's like randomly tossing your sheet music papers along the piano everytime you need to turn the page.

    Whereas with virtual desktops, I hit Alt-3 and it takes me to my IDE and a few terms. Because I'm consistent in where I put things, this action is trained and, like mouse gestures, the physical motion is done without any thought. The nifty little transition animation is a lot less dramatic and helps to subconsciously cue your brain that your going to another set of applications.

    While I'm talking about programming, I'm sure people doing "average Mac user" tasks like writing in Word, making something in Photoshop, or even just looking at more than 2 pdfs concurrently, also need to concentrate at the same level some of the time.

    1. Re:Expose kicks your brain's ass. by CoolGuySteve · · Score: 1

      I'd also like to add that Apple shouldn't have any trouble implementing virtual desktops in a friendly manner when they manufacture the input hardware. People like tactile controls if they do useful things well. The iPod touch wheel, the degauss button on a CRT, and the mousewheel come to mind.

      Apple keyboards could have keys dedicated to desktop management. Something like a scroll wheel and some buttons near the top or a modifier key near the arrows would make the feature a lot more obvious and would also avoid hijacking keys from applications.

      It sounds like something Apple would never do but looking down at the bottom of my iBook's keyboard, I have keys labelled fn, ctrl, option, command, and enter, three of which are completely useless unless I have to use the F1 to F6 keys or pretend like I'm a cartoon swearing in greek (ø®ç). All one of them needs is a new sticker and a relocation.

      On the GUI side, the different desktops can distort and act like pieces of paper, the metaphor being that switching to a new desktop is like flipping through the pages on a sketchpad. You could even extend the metaphor to include features like destroying a desktop and all the programs in it by crumpling up the page and throwing it into Trash, or saving and loading a workspace with a bunch of programs already loaded by pushing and pulling a desktop out of a binder or photo album.

  69. I'm a programmer and I find it useful by SuperKendall · · Score: 1

    I'm also a programmer and still find Expose is just as useful to me as were virtual desktops.

    You could set up a room and have windows appear in fixed spots, which is nice. But I was finding I ended with with windows I wanted across some rooms and not others, and moving some windows between rooms at times. Thus there was an overhead to using rooms.

    That's what I like about Expose, that I can keep everything in place and have quick access to things withouth the fuss of room maintenience.

    I don't find it distorting at all, rather than "thrwing your sheet music all over" I find it more like stepping back to look at a crowded shelf, so I can find what I am looking for by faster visual searches. Sometimes I would forget what room something was in and have to toggle between them, but with Expose I can do a very quick parallel procesing O(1) search of my entire workspace using visual recognition. As a programmer I would think you would appreciate that!

    I'm not saying there's no place for grouping that rooms provide, just that Expose has served me well enough to not miss rooms, and I still think there are probably better ways that strict "rooms" or virtual screens that are larger than the real screen.

    I will say that sometimes with a lot of text windows it can be harder to recognize what you want, but I find generally code has a distinctive shape that I can discern pretty easily. I think a good enhancement for Expose though would be to place the titlebar text across each screen in a large font, fairly translucent so you could make out the screen beneath. That might hinder the quick visual search though as your brain struggled to process the text.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley