flat assembler
Message board for the users of flat assembler.

Index > Heap > programming is easy, making software is hard

Author
Thread Post new topic Reply to topic
wisepenguin



Joined: 30 Mar 2005
Posts: 129
wisepenguin
hello,
the number of applications i have, or websites i visit that are actually well
made is way too small for my liking - and it just goes to show that
programming is easy, and making software is hard.

or maybe it just shows an increase in the number of beginners playing
a bigger role than they should be in the development process. i don't
expect everyone to know everything - i sure don't, but it does disappoint
me to see basic things like not putting start menu icons in "all users"
or trying to save data in the installation directory instead of the specifc
place microsft saved for everybody - where the current user actually has
write access.

i use windows xp (32 and 64) on my computer and i think its great, well done
to the whole team - as more than just developers help to make it.

do you think alot of software misses the mark today, or do you think they
are fine ? i do think making software is hard - and i haven't made good
software yet.

have a good day
Post 30 Aug 2009, 10:13
View user's profile Send private message Reply with quote
Borsuc



Joined: 29 Dec 2005
Posts: 2466
Location: Bucharest, Romania
Borsuc
wisepenguin wrote:
or trying to save data in the installation directory instead of the specifc
place microsft saved for everybody - where the current user actually has
write access.
I have to disagree with this one big time.
I absolutely hate applications that write to the user or the registry. I prefer apps to be portable and be able to simply be copied around, even on removable media, and run from there. Like USB sticks, for instance.

There's no way it can be portable by touching a centralized setting. It makes migrating harder. It is a pain in the ass.

And I hate "multiple users" approach. revolution designed a small program to launch only specific programs you want with restrictions, which is MUCH better and still be logged in as admin. I also use sandboxes so...

I absolutely DESPISE apps that don't have the option to write to their own installation folder Mad

_________________
Previously known as The_Grey_Beast
Post 30 Aug 2009, 14:40
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17247
Location: In your JS exploiting you and your system
revolution
Actually I think wisepenguin is half correct.

Programming is easy, making software is also easy, but making GOOD software is hard. Why is it hard? Because different people want and expect different things, so you can't please everyone.
Post 30 Aug 2009, 15:20
View user's profile Send private message Visit poster's website Reply with quote
Borsuc



Joined: 29 Dec 2005
Posts: 2466
Location: Bucharest, Romania
Borsuc
I agree with him, but I disagree with what he considers "good software". Although I do agree that making proper software is hard.
Post 30 Aug 2009, 15:25
View user's profile Send private message Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias
revolution wrote:

but making GOOD software is hard. Why is it hard? Because different people want and expect different things, so you can't please everyone.
I don't agree.
Programming was defined many decades ago, as data structures plus algorithm. I rarely observe that approach on this forum. Most folks do not start with the data structure, or a diagram of relationships. Most FASM forumers start typing "code". They add comments, if required to do so, only at the end of their assignment.

Good programming is, by definition, good software. Writing truly "good" software, i.e. good programming, is not accomplished by waiting until after some code functions more or less accurately, to commence writing the operations manual.

Several books have explained this in great detail. It is not a matter of "pleasing everyone", but it is a matter of writing with sufficient clarity and detail to persuade most native speakers that it is worthwhile for them to make the effort to absorb the code.
Post 30 Aug 2009, 17:41
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17247
Location: In your JS exploiting you and your system
revolution
tom tobias wrote:
Good programming is, by definition, good software.
Where is that defined?
Post 30 Aug 2009, 17:51
View user's profile Send private message Visit poster's website Reply with quote
Pinecone_



Joined: 28 Apr 2008
Posts: 180
Pinecone_
I think that good programming and good software are all a matter of perspective.

Some may argue that good programming means planning everything so you know how and where everything will link together and what the final product will be. Others would say it's writing a good algorithm to complete a task.

And from the above posts, you can see that different people have different ideas of what good software is.

I think we need do define the differences between writing good code, as in code which carries a task well, and "Planned" programming, where everything is know before any code is even written.

And there is no "good" software, it all comes down to user preferences. While the majority of people will like certain things, there will still be the odd few others who like it different and disagree with what most people call good software.
Post 30 Aug 2009, 18:59
View user's profile Send private message Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 8864
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 334455
sleepsleep
Quote:

programming is easy, and making software is hard.

i kinda agree with this, programming is easy, as long as you know the basic loop, define variable, managing array, perhaps you are already half way to produce one software that could solve your problems.

but to make a software that really solve the problems and easily usable by consumers is kinda hard. most people have some expectations before they start using a software, and that "expectation" if not fulfilled nicely, will give the consumers an idea that, you software is hard to use, not user friendly.

i think we could divide the "good" software into several parts.

good user interface (nice and logical common sense controls)
good in term of database structures
good in term of code quality of the software.
good in term of the logic used in order to solve the problem

but programming is not enough to make a software, the programmers also need to have in depth knowledge with the OS api that could assists his program. imo.
Post 30 Aug 2009, 20:40
View user's profile Send private message Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias
revolution wrote:
Where is that defined?
Here are some authors:

Brooks,
Dandamudi,
Dijkstra,
Hoare,
Knuth,
Wirth.
Post 31 Aug 2009, 01:28
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17247
Location: In your JS exploiting you and your system
revolution
I have Knuth. Can you give me the volume/page/paragraph number please?
Post 31 Aug 2009, 02:01
View user's profile Send private message Visit poster's website Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1160
Azu
wisepenguin wrote:
hello,
the number of applications i have, or websites i visit that are actually well
made is way too small for my liking - and it just goes to show that
programming is easy, and making software is hard.

or maybe it just shows an increase in the number of beginners playing
a bigger role than they should be in the development process. i don't
expect everyone to know everything - i sure don't, but it does disappoint
me to see basic things like not putting start menu icons in "all users"
or trying to save data in the installation directory instead of the specifc
place microsft saved for everybody - where the current user actually has
write access.

i use windows xp (32 and 64) on my computer and i think its great, well done
to the whole team - as more than just developers help to make it.

do you think alot of software misses the mark today, or do you think they
are fine ? i do think making software is hard - and i haven't made good
software yet.

have a good day
Programs should be able to write to their own folder without admin privileges.. if they can't, this is Microsoft's fault for designing Windows wrong.
Post 31 Aug 2009, 04:14
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
wisepenguin



Joined: 30 Mar 2005
Posts: 129
wisepenguin
nice to hear the different opinions.

Azu wrote:
Programs should be able to write to their own folder without admin privileges.. if they can't, this is Microsoft's fault for designing Windows wrong.

Borsuc wrote:
I have to disagree with this one big time.


i don't have a problem with programs writing to their own directory - i was
a developer on the coolplayer team just for the last 3 releases and that writes into its own directory
and is fairly portable. my problem was, as Azu says, by default limited
user accounts do not have the privileges and it means the app won't run
without me changing security settings. and i'm talking about large programs
here with setup files- ie. office, cubase - which come from cd.

saving data into the Application Data or Local Settings\Application Data
doesn't make it non-portable - you can still copy that along with the program.

Borsuc wrote:
I absolutely DESPISE apps that don't have the option to write to their own installation folder

for programs which from with their own setup - i prefer them to write to
application data, but programs which just come in a zip file and can be
placed anywhere, i prefer them to write to their own directory.

my point wasn't that bad software writes to its own directory, and to be
good it has to write in app data - it was that sometimes many
problems come about because the developers assume
everyone elses machine is setup like theirs, and running as administrator.

my point was sort of like sleepsleep says - its utilising the proper construct
at the proper time to create useful, easy to use software. although i don't
actually know the proper construct at the proper time myself - i get
plenty of things wrong. but thats just part of learning.

reading the topic one more time, theres actually points in all of the posts i agree
with - so i won't quote them all. although i would be interested to hear
knuths definition of good software if tom tobias or anyone can find it
in his book.

have a good day
Post 31 Aug 2009, 11:12
View user's profile Send private message Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1160
Azu
I think a program is only portable if both of these conditions are met:
1) It is contained in a single folder or file
2) That folder/file can be placed anywhere you have access rights to and will still run right (even on a different computer, as long as it's a compatible architecture e.g. windows to windows not windows to mac).
Post 31 Aug 2009, 12:46
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
tom tobias



Joined: 09 Sep 2003
Posts: 1320
Location: usa
tom tobias
revolution wrote:
I have Knuth. Can you give me the volume/page/paragraph number please?
yes.
volume 1, page 1, section 1.1 entitled, "Basic Concepts"
Knuth wrote:
ALGORITHMS
The NOTION of an algorithm is basic to all of computer programming, so we should begin....
Post 31 Aug 2009, 12:50
View user's profile Send private message Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1160
Azu
What's the algorithm in hello world programs?
Post 31 Aug 2009, 13:11
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
Borsuc



Joined: 29 Dec 2005
Posts: 2466
Location: Bucharest, Romania
Borsuc
wisepenguin wrote:
i don't have a problem with programs writing to their own directory - i was
a developer on the coolplayer team just for the last 3 releases and that writes into its own directory
and is fairly portable. my problem was, as Azu says, by default limited
user accounts do not have the privileges and it means the app won't run
without me changing security settings. and i'm talking about large programs
here with setup files- ie. office, cubase - which come from cd.

saving data into the Application Data or Local Settings\Application Data
doesn't make it non-portable - you can still copy that along with the program.
You can copy it? Like, on a removable media and run it from there?

Plus you will need two copies of two folders, so it's a slightly more pain in the ass. Also, when you go to the apps folder, you are not certain that everything app-related is there -- deleting it, for instance, doesn't guarantee it's completely off your system.

Cubase is a bloated piece of junk, software-wise speaking.

wisepenguin wrote:
for programs which from with their own setup - i prefer them to write to
application data, but programs which just come in a zip file and can be
placed anywhere, i prefer them to write to their own directory.
Well here's something from me: I would much prefer if all apps came in a .zip file. I hate "installations". Installs are one of the worst ideas ever conceived, along with the registry (centralized registry that is, not per-application registry).

Let's see: I get a new computer. I install Windows. Next thing I do, to make it you know, easy-to-use like they advertise? How to do that? Well here's a brilliant approach (sarcasm included!):

Plug in my old HDD, browse Programs folder, select it, copy it to new harddrive.

THAT'S IT. I could be working on that new comp in a day. Productivity, and headache-less method! This sounds like a really novel approach doesn't it? Rolling Eyes

But people complain, especially productive people, that it takes around a week at worst doing it with "installs" or other CRAPPY BACKWARDS STEPS. Not just installing but configuring the comp also.

This is how it should be done. Not with "installs", not with "registry", and not with "centralized settings". You know what I did to some apps that couldn't be portablized? I made a freaking batch file to add the required registry CRAP automatically. So when I launch them for the first time they still work, although not portable. But still better than the idiotic "install" idea.

I mean who the hell enjoys making stuff harder-to-use? That's backwards.

_________________
Previously known as The_Grey_Beast
Post 31 Aug 2009, 16:38
View user's profile Send private message Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1160
Azu
Hey, I thought we were supposed to disagree? What's going on here? Confused
Post 31 Aug 2009, 16:41
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
Borsuc



Joined: 29 Dec 2005
Posts: 2466
Location: Bucharest, Romania
Borsuc
What do you mean, I wasn't talking to you Laughing
Post 31 Aug 2009, 16:46
View user's profile Send private message Reply with quote
wisepenguin



Joined: 30 Mar 2005
Posts: 129
wisepenguin
hi borsuc,
i now understand what you mean by portable - and my reference to portable settings is wrong.

i do like and prefer apps to be in plain ZIP files and its up to the user to
do what they want - the few pieces of software i've released has been in this format. and yeh,
i agree it makes it so much easier to setup a new computer/or after a format.
installing vs2008 and sp1 several times taught me that Smile long live vc6.
Post 31 Aug 2009, 21:11
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17247
Location: In your JS exploiting you and your system
revolution
tom tobias wrote:
revolution wrote:
I have Knuth. Can you give me the volume/page/paragraph number please?
yes.
volume 1, page 1, section 1.1 entitled, "Basic Concepts"
Knuth wrote:
ALGORITHMS
The NOTION of an algorithm is basic to all of computer programming, so we should begin....
Very Happy

Very funny, but it still doesn't answer the question unfortunately. I guess it will just have to be yet another of those unproven assertions that people seem to be happy to make but unhappy when asked to provide more information.
Post 01 Sep 2009, 03:52
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar.

Powered by rwasa.