Impact of Windows Programmer Hordes on Linux? 277
Dr Dobbs Journal analyses the impact that
Windows Programmers could have on Linux arguing that they
could boost Linux' usability drastically.
So what do you think Windows programmers
could do to/for Linux? Do you think the ensuing culture
struggle will be positive or negative? Link from
LWN.
Windws? Usable? (Score:1)
I am, however, worried that they are going to treat Linux like Win32 by writing 32-bit, little-endian code that wont even compile on my Netwinder. I see enough non-portable code from Unix programmers
I hope they spend the time to learn the platform properly.
A good thing (Score:1)
When and if Windows programmers come over to Linux, sure, they will begin to look at usability code and stuff like that, but they will become confused when they see that X works with multiple window managers, not a single one such as explorer. Before the Windows users out there chide me because LiteStep is out there, recall that LiteStep is a *SHELL* not a Window Manager.
Also, by the time most mainstream Windows programmers switch, I believe that GNOME and KDE will have taken control of most of the visual desktops, making it almost impossible for a developer to ruin most Linux users' desktops by just adding their own code (as long as the users stick to official distributions of the packages...).
Finally, there are many good programmers for Windows, stuck in an industry-centric job. They go where the industry goes (they have to earn a living...). And just as all the other Linux hackers out there learned, they will also.
- Shaheen Gandhi
gandhimail@worldnet.att.net
Vitriol against Windows Programmers! (Score:1)
We are not all stoogies of the running dog MS... (Score:1)
No Subject Given (Score:1)
or starting to happen. The new kernel (2.2.0)
already has decent sound and apm support. KDE
1.1.1 is pretty polished and usable (unlike E - no flames please - KDE works out of the box and is easy to configure without editing text files).
He has a point though - usability can always be
improved, and although I think KDE is more usable
than the Win '98 interface, stealing good ideas
from MS (they don't have many, but they have a few) makes sense. A lot of the good gui features
in Windows were stolen from the Mac anyway.
Also, more programming bodies can't hurt.
Give them some slack (Score:1)
Give anyone who's been programming for any amount of time and who gives a damn about quality a stable platform and a decent set of well documented APIs and I'll guarantee you they produce good code.
Just my $.02 on this one...
Heck with the Windows programmers... (Score:1)
App Developers vs. System Programmers (Score:1)
To me the difference between Windows programmers and UNIX programmers is that the hordes of Windows programmers can mostly be classed as application developers, whereas UNIX programmers are more apt to be system programmers, deeper into the layers of the OS.
I'm sure the app developers have their place, but UNIX is a different beast from Windows. More often than not you stray into the system level, and you can't hide behind point-and-click development tools.
Missing the point... (Score:1)
Given that Windows (and NeXT Step, and Motif, and ...) libraries already exists, the issue is also not that there is much missing from Linux. If people want to program Windows-style UIs under Linux, they already can. Most people who complain about poor usability in Linux are simply complaning about the fact that people write software for all different kinds of UIs, not just their pet ones. That variety results in some fragmentation and duplication of effort, but it also is what primarily distinguishes Linux from Windows.
There is only one area where I would like to see a little more standardization in Linux: in the area of inter-application communications. But efforts are underway: xdnd seems to have been adopted, and COM-light/CORBA are both becoming more widely standardized and used under Linux.
The times they are a changing...... (Score:1)
For your information, there ALREADY is a very healthy market in Windows freeware, and this freeware is GOOD. On balance, much better than a typical Linux app and much more usable. Most do not use Visual Basic, but C or C++. I've not paid a penny for Windows apps except for my C++ compiler for years since using Windows, reluctantly, after the decline of Amiga and Os2, and I have everything - midi sequencers, excellent text editors, graphics, internet apps, etc. The Linux apps I have, with a very few exceptions like Gimp, are in no way competetive from the standpoint of power, flexibility and usability. Without usability, the first two don't mean much.
Just because the underlying system (Windows) is bloated and unstable when stressed does not make these apps bloated and buggy. These many excellent free apps are in no way like bloated office suites and browsers (which are just as bloated and buggy in their Linux versions). They are generally mean and lean.
Fes Windows freeware programmers release source code. A few of these free apps use GPL licensing, but most Windows programmers don't even know about GNU, yet. Source code is not generally released because most of these free apps started as shareware, and when their authors were not able to get enough people to pay for the shareware, they said to heck with that, and released the apps as freeware. As these excellent software authors come over to Linux, they will release source code, though. Some already do.
Wake up, insular, ignorant Linux elitists. Good programmers write software that is usable, not arcane. If you can't create apps that people want to use, and which are usable and efficient, you are incompetent. Using or not using vi or emacs has nothing whatsoever to do with one's competence as a developer.
People who want to be developers but who don't have the right stuff become sysadmins. Your days numbered, because you can no longer get away with writing lousy apps to keep Linux an elitist thing (and protect your boring sysadmin jobs which depend on system utilities for unix which have poor interfaces, inconsistent switches and parameters, etc.).
Windows programmers writing applications for Linux will in no way affect the underlying system or kernel. Applications programmers DO NOT want to do kernel hacking or write device drivers or develop new systems. Subsystems in which their apps can live, perhaps. The influx of Windows programmers will probably not even affect desktop systems and subsystems like Gnome and Kde AT ALL. Rather, these programmers will use api's provided by gtk, qt, kde, etc., to develop what they are good at, which is APPLICATIONS, not systems.
The times, they are a-changing. It's about time.
Lou Grinzo doesn't grok OpenSource in practice (Score:1)
In general, he's right about WinGeeks scratching thier developer itches and contributing things. The same thing has happened when poor souls are forced to work in an NT environment we saw vi ported, emacs ported, GCC, sed, awk, you name it ported for free or sold like Hamilton csh and Attaman telent daemon. Of course, M$ has also done things (IIS, Terminal Server addition, CrappyDNS server, etc). This made NT more bearable for *NIX users/admins. The same type of thing will eventually happen with Win32 crap and Linux if there is enough interest. One difference though: since no cestpool of marketing fuckheads controls Linux, you won't have to take "features" you don't want.
That's where Lou fails in his analysis: so long as the source remains free, there will be some package configuration, some distribution team, or some heroic individual who will work towards what long-time Linux users like. Even with a "demographic shift" as described in the article, OpenSource is IMMUNE to total mutation and/or hijacking from whining Win32 (l)users who don't understand or appreciate "mount".
Use the source, Luke.
Get a clue, Lou.
It's not so much... (Score:1)
Most GNU/Linux programs are fairly new, and are just getting out of the level of building a solid core, and are only now starting to shift to GUI work. It'll be another couple of years before we see good GUIs, but when they start coming out, they'll probably be better than the crap we see on Windows.
- pmitros at mit.edu
(note: I wouldn't mind an influx of Mac and NeXT programmers to help with the GUI)
Can't wait to see the FUD from this! (Score:1)
hypergrowth as thousands of Windows programmers
defect to it"
from all the people who defected through the iron
curtain!
Don't be so kind to MFC (Score:1)
M$ programming tools include wizards that make it easy to pop up some decent looking GUI interface in minutes.
The MFC wizard produces ONE GUI. It's the same one, every time. If that's not what you want, well, tough shit. It'll take longer to re-engineer it into something useful than it would have taken to write what you want in C from the ground up. I am not kidding, and I am not exaggerating. I hang out in the funhouse mirror that is windows development for a living.
MFC is very useful for writing Notepad clones, and also other programs that look and act like Notepad clones and basically do the same thing for other file formats. That is what MFC is good for. It also militates violently against abstraction and it generally isn't much more object-oriented than a hockey stick. Blechh.
I'd rather eat a rhinoceros than spend the rest of my life on that crap.
Joe Dzugashvili
steel@intern.com
p.s. Yes, I did eat a rhinoceros once on a bet, so I know what I'm talking about. I was drunk, I was young and full of life, you know how it is.
Observations... (Score:1)
2. While win32 has some serious design flaws, the biggest challenge of windows programming is coming up with a really good UI. Its hard, and I think the effort far more often fails than succeeds, both in windows and in X. While throwing more heads at the problem isn't going to solve it, we will surely get more gems mixed in with the dung.
3. I think there is very little to leverage specificly from windows to X that isn't already cross platform under the guise of "good design"...(patterns, STL, etc...) What you do get is a tap into another source of fingers to be typing.
Ah well... I got learnin to do and already spend too much time wasting others time on
I WELCOME anyone and everyone to Linux (Score:1)
something you like. May the best implementation
and programmer win!!!
A Microsoft SDE speaks his mind (Score:1)
I code for Microsoft and not ashamed of it.
(Well, I'm anonymous because I know my mailbox would fill up with mail flaming me for working where I do and feeling the way I do, and there's no
-J
A little self ego gratification for win programmer (Score:1)
While I have no problem with there being tools available for those who need them or want them, such as automount CD utils etc, I dont want them to replace what Linux is currently. It seems from the article that the author doesn't understand this, that both can be had and live together harmoniously. Instead, he comments that the mighty windows programmers will decend into Sodom and Linux and will tranform this place of sin such that the prophecy will come true and linux will achieve World Domination and be King of the OS's.
As far as ease of use on the desktop, if someone cant use GNOME or KDE its not a desktop created by the great windows programmers but a brain.... go visit the wizard
More and more tools are being developed for X as opposed to command line tools or dos like interfaces. These apps are utilizing toolkits like GTK+ ( personally think this is the best looking widget set I've ever seen... any OS ), Xforms, Fltk, wxWindows, etc and they all basically are setup very similar in terms of menu's, toolbars, etc. I defy any one to prove to me that apps written with these toolkits in X are any less user friendly that windows. Maybe the commandline tools are less friendly ( hell some are down right evil ) or standardized but there are X equivalents to most of these.
Some windows programmers would be lovely to have and I'm sure they would have some very good ideas to contribute but please dont make them out to be the magic bullet for Linux's success. The only thing monumental about windows programmers programming linux that would in any way be a paradigm shift is that conceivably they would no longer be programming for windows and thus a "brain drain" from windows to linux would occur.
I have a solution for how to achieve the unified look across all applications on a desktop. Instead of having the widgets ( looks ) defined by individual toolkits, have them make calls just to a general windget name...ie button.. and let the window managers supply the widget images for all widgets. Thus on any one WM the apps will all have a consistent look... this would still allow flexability because people could conceivably "theme" the widget set for each WM to allow all sorts of weirdness. The biggest problem I see for this idea is that there are manytoolkits in use that would have to have parts rewritten, everyone would have to comply, WM would have to develop standard widget sets for respecitvely and a ton of programs would have to be altered and recompiled... a sizable effort, one I'm not sure is absolutely necessary but an available solution should it be mandated by users at large that a 100% consistent look between apps exist
Just my thoughts on the matter
jeff
Windows programmers and fluff (Score:1)
WHY? NT IS BEATING UNIX (Score:1)
What they don't factor into those number is the fact that freely-available Unix has put a strain on the commercial Unix market, at least on the workstation side. NT is a minority.
Same goes for the server-side, which, conveniently, they fail to mention in this Microsoftian article.
Unicode? Internationalization! (Score:1)
Please don't confuse two things. "Unicode support" mentioned in the article is not what Linux, or Unix, or people need -- Unicode is a half-assed way to support displaying text in multiple languages without really supporting any of those languages. The problem of multiple language support is much bigger than the use of some overbloated alphabet, it still needs a good solution, developed with clear understanding, what exactly is necessary to make the use of text in multiple languages suitable for reading and processing. Unicode solves small part of the problem (how to represent and display a string with text in multiple languages) but makes impossible to solve anything else -- the basic question "what language is this word in?" can't be answered after the text is converted to Unicode.
I personally believe that there is no alternative to the development of text charset/language labeling system and format (that will use existing language and charset names -- no need to reinvant the wheel there). Maybe XML (without the requirement to use Unicode everywhere -- this requirement is to say the least, is odd in that standard) can provide such labeling, maybe inline MIME-ish labels will be useful, but plain extension the character size and requirement to use one "charset" for everything is just a way to sweep dust under the carpet. This is what we can expect from Microsoft (and they have done it, too -- but ask non-western-European Windows user if it helped) but what will be a huge step back for anything more advanced.
Unicode? Internationalization! (Score:1)
Don't even DARE tell me that a multiple charset approach such as the ISO-2022 crap is better.
Why not make a better labeling system? The idea of one huge charset that includes everything else is still flawed, that fact that existing alternatives are bad doesn't change it.
As for those Asian and European stances about it, they are no better than an American saying "just use ASCII for everything". They have something that works for their narrow uses and couldn't care less about a solution that works for everyone in the world.
It does not work for "everyone in the world". Japanese don't like it, Chinese don't like it, Koreans don't like it, Russians (myself included) don't like it, etc. Who does? People who speak English (first 128 Unicode symbols are ASCII) or use Latin-1 (first 256 Unicode symbols are iso8859-1). No one else.
Unicode is an attempt to bring "happiness to the world" by forcing one narrow-minded vision on people who don't approve it, by telling them that "others" like it. There is no "others". No one uses it or likes it except people whose existing charsets happened to "coincide" with the beginning of Unicode table (so they remain using their charsets, possibly inserting more bytes into their strings).
I certainly prefer to use koi8-r for Cyrillic and have MIME headers in mail and web pages tell me what charset and language is used. With the lack of better solution I can use multipart MIME message to represent document with multiple languages. I will prefer to have better way of handling multiple charsets/languages (even though personally I never deal with documents that contain more than one language other than English, and ASCII is a common subset, representable in all charsets), but there is no better way now, and Unicode certainly is worse than that.
As for Microsoft, if it makes you feel better you should know that their implementation has the usual flaws and violations of the standard that Microsoft always has when they try to use an open standard.
It's poor implementation of poor standard.
Don't let them distract you from the best technical solution.
It definitely isn't the best of what can be made, and what is worse, it's a dead end -- no possibility for improvement because the whole concept of language is thrown out of the window.
Microsoft innovations examples three (Score:1)
2. Apple had Opendoc first (well, slightly, but they were first)
3. Maybe they did innovate on this one, although I'm not exactly sure what it is
Quite so... (Score:1)
Consistent keys for shortcuts? Aaaa! How I wish I had this on Linux! I really miss it terribly. I _use_ the keyboard. Hell, _Netscape_ does not have all the keyboard shortcuts under Linux. I guess I better learn emacs
Type/creator? Damn straight. This _works_. It _also_ assumes you are going to be making choices about your apps and files, that you will want to customize them or have special cases. The closest we get to the Windows file mapping tyranny is Quicktime or Internet Config download mapping. Even that sometimes annoys a Mac person...
The filename stuff is all basically the same in Linux- no extensions, the period is just another character it seems.
Contextual menus? That's recent for MacOS- but it wasn't Windows that invented it- it was Smalltalk! My preferred Linux windowmanager is Window Maker- it uses popups heavily, and lets me assign Fkeys to help pop up the menus that normally are 2nd and 3rd button.
No MDI windows! Damn straight, but you're understating how good drag and drop is on the Mac. Though it still has missing spots- every single network application I use (email, news, IRC, _ftp_ for God's sake) is totally drag-and-drop savvy from the desktop. _Netscape_ is not. I have to bounce stuff off of Simpletext to get text clippings. Text clippings _rule_. You don't even have to use a texteditor to view them- it's built into the windowmanager ("Finder"). The point about MacOS encouraging layering with offset windows is quite accurate- on the other hand, Afterstep has one type of effective virtual desktop (visual icon view) and Window Maker has one in which the arrows on the clip, when the clip is kept in the topleft corner, are clickable even with a window mostly covering the clip. I consider that as good as anything in MacOS, and I love MacOS
Unix shells beat Applescript- with Applescript, the syntactic sugar hides the fact that it's still hard to get apps to do what you want. You have to get abstract anyway- best to not _pretend_ to be plain English
Color matching is still unmatched by anybody else- if you've used recent versions of ColorSync, you understand. Ironically it's marginally less powerful than earlier gamma controlpanels- but settings like accurate 50% settings for each color channel are made totally intuitive and graspable, and the process is clean and easy and direct- and Mac gamma IS GLOBAL. _All_ colors are correct, not just within certain windows like app-based color matching. I'd love to see Linux have something like this.
Novice interface? Let the KDE people do that. Just keep 'em from getting in the way of my Window Maker, please
Actually we do have tabbed dialogs, but they are new and usually part of Win ports and I personally dislike them too. They are an interface copout, an attempt to keep all options in your face at all times, like toolbar madness
Installers more and more put stuff in the apple menu or system folder- I hate this too- the thing is, it used to be that programmers respected that we set up our _own_ systems. These days the assumption is that we want the programmers to administer everything. Blech- that'll drive me away from MacOS if it gets too bad
Interestingly, the 'no window open' program always loses newbies- you launch a good Mac program and it waits for you to take some action and the newbie thinks nothing happened. It's like Unix- expert users want a cleaner interface. This type of Mac program is cleaner- in those cases the program's waiting for you to make a menu selection, and not drawing dancing paperclips and crap
BBEdit rules. Newswatcher rules too. There are indeed some beautiful apps there. I'm personally fond of Eudora Lite because of how light it really is, and how much you can do with keyboard shortcuts. It'd take me three times as long to handle the same load if I had to use the mouse- and I don't know the commands for Pine etc for doing this, nor do I have the same graphical overview of the messages I get in Eudora. Interestingly, all these programs are multi-overlapping-window style instead of textareas-artistically-spaced-in-a-gray-backgroun
GUI just _isn't_ tossing icons everywhere and putting all the types of information in different textareas... Mac hackers, powerusers, programmers, understand this: there is tons of serious research that's been done about this. Buy 'Tog On Interface' if you're serious about GUI- if you want to do userfriendly you do it this way or you're not doing it at all- it's a science, it's not an art or popularity contest. And Windows is hardly an example of the right way- and much of the Mac world isn't the right way either. You can get tons of Mac programs that suck. I just avoid those where possible.
And yes- I program. Not well- I guess some of my ideas are OK, I guess some of my algorithms are OK. I've been implementing them in REALbasic for the Mac (like VB done right, without sucky parts, and fully compiled to native code). I anticipate having a much easier time learning C on Linux than I would learning it on the Mac (at least until I can get codewarrior) because C on Unix is _easier_ than Mac programming. Much. Mac programming is insanely hard- your program is expected to understand everything from drag+drop (and oh, that's fun to implement!
I think, in the end, I'll be starting to program Linux simply because I expect Windows people busily programming Linux to make it work better for newbies and look and act more like they are used to- and this will hurt what it means to me, so in selfdefense I have to get involved and put some work in, stake my claim and define my territory. Not to make linux look and act like a Mac- but to retain the freedom to have it looking and acting however I please. So far I can still totally work it over and make it individual- I don't even want to lose that. I got a good, strong taste of that freedom using a Mac for years- I won't go back, I want to go forward and have even more individuality. Woohoo!
And of course, I'd like to get my hands dirty with some techie details I'd really be able to cope with. I just _rebooted_ solely because, after hammering away at 27 different kinds of net content for 12 hours straight and then having a PPP timeout, MacOS got confused and couldn't shut down PPP effectively enough to restart it. At least in unix if I knew the correct obscure commands or whatever, I could do it myself...
Windows programers will assimilate. (Score:1)
Depends on what kind of consistency you mean (Score:1)
Holy cow (Score:1)
This is really pathetic. I can't believe some of the comments made here. I used to think that the people on
"Look how good they did with NT, 95, 98, Office, and all the crappy applications they made"
All of those are Microsoft applications...this should be self-explanatory. Obviously if you liked the quality of MS software you would probably use their operating system as well. But do you really think all Windows programmers work for Microsoft?
"Those ones that write buggy limited software using buggy limited IDE's?"
Is this really what I'm hearing? All software has bugs, and if Windows programmers want to contribute to the OSS codebase, how is that any different from a newbie Linux coder releasing his code under the GPL? This is one of the biggest FUD-filled generalizations I've ever come across.
To sum up, you people need a clue. You must be the biggest bunch of hypocrites on the net. No one on slashdot ever deserves to use the word "FUD" again after this thread...
-W.W.
P.S. Sorry if this seems a little extremist or harsh...but when is slashdot going to grow up? I used to read it all the time, but now I'm finding myself stopping by less and less often.
Windows programmers VS linux programmers (Score:1)
Q) How can you tell the difference between a Linux programmer and a windows programmer?
A) Linux program names all start with "nogui"
To make Windows suck a little less... (Score:1)
The effects of Windows preconceptions in Linux (Score:2)
Not to mention the fact that I would very quickly get bored with my X displays if they looked just like the standard MS UI. I got very sick of seeing the same gray, day after day, and all my tools and applications just became a blur. They all could do some of the same things the others could do, they were almost all bloated, and it just stripped the usefulness of even investing the time and effort to learn something new, because I had already done it before.
But then, I am also more inclined to want to learn how to use my tools properly than the ordinary random person. You won't catch me using a tire iron to carve a chair leg, just like you won't see me using a MicroSoft Word-style word processor to write HTML. You'll see me using proper carving tools in the former, and either vi or Emacs and possibly a perl script to check my work in the latter.
In other words, I believe that the tools I use in Linux have (for the most part) been designed from the ground up to be as efficient in both form and function as possible. I wouldn't change that for the world; efficiency is very valuable IMHO. More so than a "standardized UI".
Just my humble opinion.
users != stupid (Score:1)
Have you read Alvin Toffler's _The Third Wave_? Essentially, he claims the future holds what the past held-- we are becoming a self-service society. Only, we're doing it with the help of technology. Users are becoming *more* aware of their computer. Computers don't have to be simple-- users have to be intelligent.
I'm not saying we shouldn't have easy-to-use software. We should. But we shouldn't assume we're building this software for morons. And that is the failing in the Microsoft camp. They assume they are designing software for morons. That's part of the reason they assume they can foist buggy software off on the public-- after all, the bulk of users are idiots.
I say we welcome the Windows programmers just as we do everyone else. We will learn from them, and they will (hopefully) learn from us. And if our way is truly superior, everyone will win.
Defensive (Score:1)
And just because you code for Windows doesn't mean you know shit about UI design, either. I have seen more poorly-designed user interfaces to programs than good UIs. So what do you call those who can't program a decent engine *or* a decent UI?
Windows programmers.
Or Mac programmers.
Face it, there are just a lot of bad coders. Me included-- my code sucks. But I'm doing my best, and once in a while I put out something good. And it's easier to learn the principles of UI design then to unlearn years of bad coding practices (which the visual programming systems engender).
Innovation on Linux (Score:1)
The idea that condescending to the user is "innovation" is ludicrous. And that is all the paper clip manages to do, besides suck up resources. "Agents" will be HAL-- a master agent that interfaces with the user without treating them as if they were stupid, which dispatches invisible agents to take care of the request. Agents will be proactive, helping the user-- not treating the user as if they are stupid and incompetent. That is not innovation; that's how Microsoft has been treating their customers for years. Now they just have an "agent" do it for them.
The sheer amount of control over my computer is innovative. Yes, I know most of the control is inherited from Unix (I'm a sysadmin/DBA/programmer at a Sun shop), but the absolute, complete control of the computer is simply astounding. That, coupled with CORBA on the desktop, is quite innovative. Especially since it works. (Yes, I'm aware of OpenDoc. So maybe this is just good implementation, but since there hasn't been a successful CORBA environment, I consider this quite innovative.)
But the greatest innovation is the development methodology. Even without E, the Gimp, Gtk+ and themes, Gnome and KDE, Samba,
(Innovation in the PC world? Visicalc, dBase, MacOS, Word Star/Word Perfect, and Mosaic. Hmmm... None of them are from Microsoft.)
Scroll Bars (Score:1)
No, it would be a great idea if scroll bars worked the same on every application. But the Athena Widgets work a little strangely compared to more-advanced widget sets like Motif or Qt or Gtk+. But since Xaw isn't used as much these days, it's not that big of a deal.
But if you are using this as a pro-Windows argument, it won't fly. Windows is inconsistent in its use of widgets. Perhaps it isn't as bad as the Athena widgets. I'll grant you that. But I only have two types of scroll bars (as nothing I use regularly uses the Athena widgets), and they both behave the same way.
And if you want your machine to be consistent throughout, use programs based on the same widget set. Don't mix Athena and Motif and Gtk+ and Qt apps, especially if your happiness depends on an homogenous computing experience.
- Tony
Re: (Score:1)
But Dylan is not Pascal (Score:1)
Delphi is of course written in Delphi...and a little bit of assembler for the RTL.
It does all of the things you mention...and one more.
IT ACTUALLY BLOODY WORKS!
I am evil incarnate... (Score:1)
Oh goody. To be honest the amount of total trash that comes from Linux users and hack programmers is unreal. Only really rivalled by the amount that spews from VB/MS-SQL/Access people.
The opportunity to cheese you people off by writing quality apps for "your" platform as well as Windows really appeals.
Me goes back to being an evil Delphi programmer.
Gawk rocks! (Score:1)
Although it's important to realise where you should stop using gawk and switch to perl. But this is far later than most people think.
I despair of the number of new people I see who write everything in Perl, when most of the time they could use a shell script just as effectively (I do like Perl, just in it's place).
So are Linux users unaware of Windows???? (Score:1)
The first time I used a Mac, I was positively *baffled*.
GUIs are easier for people who are used to GUIs. They are not inherently easier.
Win Programers (Score:1)
Even that VB book author (whose name escapes me) eventually decided VB was an abomination. There is hope yet!
Win programmers useless without their "wizards" (Score:1)
Who needs wizards when you can just cp the source of a similar program, and hack away at it. That can be a feature or a bug, depending on who does it, but that's true of programming in general.
With or without wizards, the competant will find a way and the rest will become fly-by-night consultants. Nothing new there.
VB can go away (Score:1)
At a former job, I was told there HAD to be windows clients for our Unix database server. I did NOT want to write Windows code in any way shape or form.
Fortunatly, I came up with a macro-like metacompiler and a CGI so any web browser could be the windows interface, and I could just write macros for the unix software. I predict there will be more of that in future. HTML can't do everything, but in many cases, it's at least adequate and painless.
Using the Start button to shut down (Score:1)
Er... (Score:1)
correct anti-mac link (Score:1)
this.
For more stuff, try [useit.com]
this.
Mac UI is better because...? (Score:1)
For example, MS Visual C++ has drag-and-drop text. It's a glitzy marketing checkbox feature, in practice is sucks, half the time you end up dragging text when you try to select it. That kind of feature really doesn't but much and it causes more harm than good.
I think that the mac has a simple design and simple interface. There is one mouse button (now everyone is going to start crying about mouse buttons...) a click needs to be the most commonly intended action and most mac programmers understand that. On Windows, you click on button and get a menu, you click the other and hopefully it does what you want it to, who knows though all the windows apps are different..
Then take button bars, until fairly recently, they were all the rage in windows apps. You fire up Word and you had 3 or 4 rows of buttons, probably 50 in all. It looks like the application can do a lot, you see all those buttons and think, 'damn, this thing has a lot of function..' fact of the matter is, most of them have menu entries and the menus are used more often because you can't figure out what the buttons do and you can't pick the right button very accurately any faster than using a menu. MS has realized this and the trend is away from the really complex button bars. Mac never had that, I can't think of a single app that had a UI feature simply because it was cool. As more sophisticated users of computers, we might be able to get some benefit out of those buttons, it's probably impossible to measure because it is so small, weigh that against the confusion it gives new users.
Mac apps typically have one or two routes to a problem's solution. If you want to spell check there is the hot key or the menu item. Windows apps often have many more routes, hot key, menu item, popup menu item, status bar listbox, button bar, maybe more. The programmers of the world think this flexability is great but it confuses users.
There are tons of other things, I could go on. I think the best thing to do would be to get your hands on a mac and do some work with some applications you've never used before and then try the same thing on windows. The mac doesn't have all the wiz-bang goodies and features windows might but its apps are amazing, and I've been a PC user and owner for 20 years. When you really look at it without bias, the mac is still probably 5 years ahead of windows if windows is even moving in the right direction.
Unfortunately, they ARE a majority (Score:1)
There *ARE* statistics about programming language usage, and Visual Basic is *definitely* the most widely used language out there, with COBOL in second place and C++ in third.
Unfortunately, I can't point you to them because I don't remember where I've seen them (You might want to check professional magazines like IEEE Software or Communications of the ACM - they've spoken about this before I think)
VB is good for certain tasks, unfortunately its ease of use has caused "round peg in square hole" syndrome to pervade the industry.
Linux needs no such thing (Score:1)
monikers in X (Score:1)
Gawk rocks! (Score:1)
If you know the language well you don't need to start (many) other processes like most people seem to think.
Gawk starts and runs faster than perl5 for most programs (that are suitable for it). In fact I only go to perl when I need to use sockets.
When you get to using sockets, you give up on perl after about 5 minutes and go use C like you should have in the first place.
Linux has RAD languages (Score:1)
I'm using pygtk right now and development is very fast. I don't use a GUI builder, but I don't like fiddling with them anyway and find it easy to go from a design on paper directly to code because of the simplicity of the language and toolkit.
Linux success was from MS-DOS/Windows programer (Score:2)
The early *BSD systems didn't even recognize the standard DOS partition scheme. Linux, on the other hand, quickly supported the FAT filesystem and worked on DOSEMU, and with UMSDOS, you could even run Linux off of a MS-DOS filesystem! The *BSD developers were, in a large part, old-time UNIX gurus who were more comfortable with a VAX or a Sun workstation than a PC. Linux users came from the Minix/MS-DOS/Windows crowd and were sneered at as not known how a "true Unix" should work. This additude still exists among many *BSD people.
I'm an old-time Unix user, but I don't fear an influx of Windows programmers, any more than I feared the "hords of unwashed masses" that have "invaded" the Internet over the last 15 years that I have been on it. Yes, the Internet has changes much because of them, and in many ways for the worse, but if there were still only a few million people on the entire Internet, there would be no Linux, no WWW, no
What do you think Win95/98 is written in? (Score:1)
asinus sum et eo superbio
Windows Programers (Score:2)
There are windows programmrs and then there are REAL windows programers. Let's really consider what a who a *programmer* before we start going off on how horrible windows programmers are.
Just because you know VB or enough C/C++ to write a notepad clone (as someone else mentioned) does not make you a windows programmer, please that's an insult to anyone who REALLY knows how to spit out code.
I'm a windows programmer.. and no I don't use VB, I write drivers and custom applications to run the production line hardware in my company's factories. Most of the stuff I write is low level C/C++ with some assembler thrown in for good measure. In my experiance I wouldn't call anyone who hasn't dug through with the crap lowlevel windows API or driver model to be a REAL windows programer.
My personal opinion is that windows programers for the most part will be good for Linux, the good ones will be added man power.. and the *hobbyists* won't hurt it any.. who cares if there are 50 notepad clones for linux? And besides the core linux developers are not going to let Joe hobby programmer screw with the kernel anyways.
-Ex-Nt-User
There's plenty of good along with the bad (Score:1)
I think the Mac has better GUI tools than Linux (Score:1)
--
Timur "too sexy for my code" Tabi, timur@tabi.org, http://www.tabi.org
Unfortunately, they ARE a majority (Score:1)
What if... (Score:1)
If you combined all of these three operating systems you would get a tremendous thing. Add the technically advanced and stable Linux (or FreeBSD) kernel, and you're in for a killer.
What if... (Score:1)
Actually, all OS suck. The point is that some of the ones out there suck less than others. You just can't say "all other than Linux sucks" without trying them first. However, NT sucks like a blonde girl charging money for sexual activities, but without the good parts about it. In other words, a rip-off.
Write more linux apps please!
I do use Linux, even if it's not on a daily basis and not for doing native apps. The basic usage of Linux for me is to create Unix shell scripts for people who just want to type 'run' to start the apps.
Using the Start button to shut down (Score:1)
What exactly do you think Start -> Shutdown do?
Macintosh programmers would be better (Score:1)
Windows programmers don't have the same strict development guidelines.
Mac guys--where are you?
Chill out dudes ... (Score:1)
My second peeve is
Finally, for those people bagging on StarOffice
Now, has anyone compiled a decent browser yet for Alpha? Can I get my Multia out of the closet yet?
Kvetchingly, D.
Using the Start button to shut down (Score:1)
Linux needs no such thing (Score:1)
Yes, large systems are difficult to write - whatever the language. But not all systems are large systems. And for small, fast, throwaway projects, VB is not that bad. It also makes a good prototyping tool - as, I'm sure, do lots of other tools.
I agree on the problems of the RAD concept though - to a degree. Sometimes quick and dirty is the right approach; sometimes careful design is. It depends on the application and the requirements.
So are Linux users unaware of Windows???? (Score:1)
When large companies start to develop for Linux, they will make an impact, however that will mostly be due to a larger concentration on certain projects not a discovery of new problems.
What do you think Win95/98 is written in? (Score:1)
Already Happening. (Score:1)
Caldera's Netware of Linux and Origin's Linux UO client, spring immediately to mind.
When linux becomes popular, most programmers won't give a damn about releasing source or other distributions. It's getting harder and harder for me with my Debian system.
Be != suck. (Score:1)
Multithreading for *everything* like the BeOS would be a keen feature for Linux 2.4.0
*I* thought it was funny. (Score:1)
Where I work, VB programming is the next career move for folks tired of desktop support. That or Lotus Notes development.
Hide the code the barbarians are coming!! (Score:1)
No, windows programmers aren't at fault. Linux is powerful and flexible partially BECAUSE it is difficult to use.
Consider mathematics or any other technical discipline. They all have their own internal definitions and methods not to confuse the populance as some people seem to suggest but because the slight difficulty in using these methods is more than made up for in future ease of use.
What happens in the future when we need to upgrade glibc again? Will the windows users recompile all there software against the new library? Will redhat ship the new library if it causes some incompatibility problems?
I for oneam in favor of usability ONLY if it is aditional/optional. Keep text config files but if you must add a configurator
WINE can be explained as being a mistake. (Score:1)
Dont judge a programmer by the platform. (Score:2)
It is not the programmers that gives windoze its "use-ability." The MFC makes it easy for windoze programmers to include all those "use-ability" features in their applications. M$ programming tools include wizards that make it easy to pop up some decent looking GUI interface in minutes. The problem with many windoze apps is that the underlying logic and operation of the program too often fails to live up to the high expectations that the GUI helps to engender.
In contrast, un*x hackers more often focus on getting the basic functionality implemented correctly. Often there is only a simple command line interface. There is a far greater probablity that if a un*x programmer takes the time to implement a GUI version of an application, that the underlying logic and functionality is already stable and debugged.
There is a great deal of influence imposed by each different development environment on the look and feel and functionality of applications.
M$ -> Easy to generate some kind of spiffy GUI. Sometimes impossible for highest gurus to circumcode buggy os calls.
GNU-Linux -> Rock solid system implementation, but lacks the wizards that allows anyone who can click on "OK" to generate a GUI based application.
This too shall pass...
Yay! Busy loops and unstable hacks! (Score:1)
These APIs actually work! (Score:1)
I assume you're not talking about Motif here :-)
endianity (Score:1)
Stuff written into files, or over a network are the biggest problems in that area. The second biggest is doing unaligned memory accesses (the x86 by default allows 16 and 32 bit operations on any byte boundry, the OS can disable that; RISC CPUs almost never allow unaligned memory accesses, except via "special" slower instructions (like the MIPS loadlo/loadhi, and the SPARC V9 ASI goo)). The alignment issue effects structure padding, so you can't read/write structs from/to files and then just swap bytes around, padding may also be wrong. There are also issues with pointer vs. int size, does a char* fit in an int? Not allways.
In general the idea is that programers who have only used a system that works one way may think that all systems work that way (once known as the "All the world's a VAX" syndrome). More to the point programs only tested on one type of system even if written by programmers who know better can devlope this type of problem. I know, I have written programs on a SPARC, and discovered when porting to an x86 that I forgot to convert from "newtwork" to "host" byte orders in a few places (and I'm talking about less then 5% of the places). Specifically the fear is that the existing "hordes of windows programmers" have only used windows, and to the extent that Linux on the Intel behaves like a Wintel system, they won't learn to do the more portable thing. I expect we will see many programs with binary data files that work on "Lintel" systems, but fail on Linux/SPARC. I also expect a higher percentage of current "Linux" programs can be compiled on non-Linux Unix-ish systems then programs written by folks whos only exposure to a Unix-ish system is Linux. That's not all bad, they won't fear using revoke(2) just because it isn't in Solaris. They won't avoid pthreads(3) merely because SunOS doesn't have it.
As for the bit shifts, bits 0..31 are consecutive on almost every machine I have used, and on all RISC machines I know of. Also to implment the C standard bit shifts need to work to produce the same results as multiplication or division by powers of two (with possable diffrences in signs), so the shifting you are talking about should be safe.
endianity (Score:1)
Not when i can help it. I have been spoiled for some years now by ANSI prototypes. Of corse if you read the Lion's Commentary on V7 (V6?) Unix you'll see K&R did do it quite a bit!
As i said I tipically only get bit by endeness problems, and rarely by alignment issues. That's why i like to test my code with a Sun and PC client (or peers).
I think Sun's XView (RIP) required it.
for the record (Score:1)
Dream on! (Score:1)
And as for free software usability, that usually comes with good testing, something that you need money to do properly. It's a major problem that we've discussed here before.
Consistency isn't a Windows preconception... (Score:1)
Mac UI is better because...? (Score:1)
You've already got COM (Score:1)
Hey, do you actually know *anything* about COM? Any proper arguments as to why you think it's garbage? Thought not.
Ultimate kick: (Score:1)
--
Windows Programmers Welcome (Score:1)
What we don't need, however, is people who program to the worst traditions of Windows. Before you switch to Unix coding, learn the differences between (and the rational behind)
What if... (Score:1)
Maybe you don't need to pick up a book to configure Win9x/NT, but there are plenty of books out there on how to do so, and their authors aren't exactly starving.
Vitriol against Windows Programmers! (Score:1)
... or a clear statment that Linux users want or need to be able to say that Linux supports everything that Windows does in order to convince Windows-obsessed users that Linux is worth using.
I'm actually not too sure why I'm taking part in this argument, as I'm a NetBSD, Solaris, NeXTStep, and macos (rhymes with Bacos!) user. Oh well.
Macintosh programmers would be better (Score:1)
Thinking of writing serial qcam support for PPC-based Linux, so I don't have to ditch my webcam when in (Mk)Linux(PPC).
...and maybe using NetBSD instead, but hey, OSS is OSS.
X's cut'n'paste (Score:1)
What's inconsistent about X?
Highlight the text you want, click the second button where you want it to go. You don't need any silly keystrokes, much less combinations. (Not that I'm against keyboard control, but if you're going to highlight with the mouse anyway...*)
Only exception that springs to mind is netscape, but you should be using lynx anyway.
Well, I guess I'm assuming you aren't using some weirdo window manager that tries to act like another operating system, but twm should be enough for anyone.
* I'll grant that I don't always highlight with a mouse, especially on macs, where shift-right/left highlights a letter, option-shift-right/left highlights a word, and shift-up/down highlight lines, but still...
Easy is whatever you are used to (Score:1)
What will happen is that the applicatiosn that people can get started on easily because the GUIs have similarities will be successful. The ones that arbitrarily diverge form the style guide will fail or be niche products because the learning curve is too high.
A style guide is a generalization. Details are left up to the developer. A current defacto guideline that would belong in a style guide is what basic menus to use such as File, Edit, View, Help, and guidelines for what belongs in those menus. This way the user knows in general what to expect in those menus because he/she sees the same things in every application. Simple and not terribly restricted, yet it makes learning curves shallower, and makes thigns "easy to use".
there are some good windows freeware apps. (Score:1)
like Pegasus Mail. Based on standards, efficient
extremally flexible. I use pine since few years, but still not all of pmail's features are there.
Another thing is solving stupid problems with fonts, preconfigured Mozilla configuration with plug-ins etc. Every such configuration step is easy to make, but if you need to make 50 of them
to get usable system it becomes annoying.
Thank you (Score:1)
Not one of the posters here nor any other developer has been a UNIX master from his/her first line of code. Let's give it a rest and get back to coding.
Work together, I hope.... (Score:1)
Some times I wish Unix programers would add features instead of scripting machines with more theoretical power, but that are much harder to use.
Work together, I hope.... (Score:1)
You mis-understand. I don't want a scripting language to write a script to do what I want, I want to be able to go to a menu and select what I want done. If I'm writting something in Emacs and I want wordcounts or Fog indexs, I could write a script, but it would be much easier for me just to go to an index.
Work together, I hope.... (Score:1)
*At first you seemed to be complaining that Unix programmers "tend to build do everything programs", now you want more features...*
You misunderstand. I don't want a scripting language to write a script to do what I want, I want to be able to go to a menu and select what I want done. If I'm writting something in Emacs and I want wordcounts or Fog indexs, I could write a script, but it would be much easier for me just to go to a menu item.
They will violate all traditions and standards ... (Score:1)
Usability = good APIs and controls/widgets (Score:1)
That being said, what I think this question really addresses is the need for solid, consistent APIs and widget sets. My impression so far is that toolsets like Qt, GTK, Java, etc. are getting better and more easy to use. That, to me, is one key factor in making Linux more usable: Solid GUI toolset foundations.
Another aspect that needs to be considered is programming discipline. While the Windows APIs and toolsets have made rapid application development more possible, they also have made programmers more susceptible to being lazy and less concerned about feature bloat, etc. I only hope that people who do program more extensively than I do will take the time to be (a) consistent in their coding practices and (b) respectful of cross-platform issues. If the available toolsets are not misused, then Linux will become more usable (interface-wise) without much effort.
all for it. if they embrace linux they're welcome. (Score:1)
They'd have to be re-trained, but why not? (Score:1)
As long as they don't demand (or develop) some lame-ass IDE or a whacking great collection of useless Foundation Classes, I think pulling in some Windoze programmers could be good.
It could also be a beneficial experience for them, as well. "Wait a minute. These APIs actually work! And they make sense! You mean it could have been as easy and as stress-free as this all along?"
Schwab
This is already happened. (Score:1)
be Linux programmers, but just try to turn
Linux into just a bit more stable Windows or DOS.
I see questions "How I bypass system and access
video directly" every day in comp.os.linux.development.apps.
So goes for KDE which not yet have builtin scripting language and ties programmer to ONE
language, which some people thinks better in
the world, but many other (including myself)
think as good only for limited niche, and this
niche doesn't include GUI. GUI is to be written
on Tcl/Tk, Python, Guile, but not C/C++, as well
as computation routines are not to be written
on bash.
I don't even mention numerous incompatible programs which fail to compile even on BSDI,
not mention Sparc (either Linux or Solaris)
Let alone character-graphic toolkits, which don't
work even on good telnet clients, not mention
hardware vt220, or audio programs which try to
access
have user on the same machine as they run, instead
of looking to DISPLAY variable and using netaudio.
These windows programmers do not understand five
things
1. There can be another CPU aside Intel
2. There can be other users on machine aside
one running their program
3. Nothing requires user run program on the
machine he is sitting at,
4. forking is simplier and more errorproof than
multithreading.
5. There is UNIX toolbox phylosophy and they
are expected to give users ability to combine
their program with other ones, user is already
familiar with.
Vitriol against Windows Programmers! (Score:1)
But I don't. Generalisations like yours are always wrong.
It's impossible to say what all Linux users want, because we don't all want the same thing.
Having said that, no-one will be forced to use these hypothetical apps developed by this hypothetical horde of Windows programmers, so, sure, let them go ahead and code. It's no big deal.
Someone else made the point that whether there is a whole lot to be learned from the Windows world about GUI design is questionable, and that is true. Perhaps what we need for Linux is a whole re-examination of the human/computer interface, rather than copying old designs.
Here's a good article on this:
The Anti-Mac Interface [http]
There's plenty of good along with the bad (Score:2)
It's fashonable in Linux circles to express contempt for all things Microsoftian. But this is a mistake; we can learn a lot from looking at what works on the Microsoft and Mac platforms, while leaving behind what does not work.
Many people who have spent all their time in the Unix world have never seen a good GUI. A good GUI is one that enables an expert in an application area to be highly productive. One reason why users are highly productive is that the applications they need to use work consistently. In that sense, X's configurability has worked against us ... it makes it too easy for every app to work differently. In many Unix/Linux shops, no one can sit down at his neighbor's desktop and help with a problem, because everyone has a different window manager and has rebound all the keys to work differently.
Too many people on Slashdot say "I don't like it because it looks like Windows". What you are saying is that you would rather be different for the sake of being different, and you don't care that this will make life harder for new users.
Windows made lots of botches that should not be copied, e.g. to shut down your computer you first press a button named "Start".
One thing Microsoft spends a lot of money on is human-factors research. What is easiest for people to use? Coming up with a theme per day is fine and dandy, but it would be nicer to conduct studies on what works the best for different types of users.