X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-1.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,SARE_MSGID_LONG45,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org MIME-Version: 1.0 In-Reply-To: <4BBB2836.3000601@gmail.com> References: <4BBB2836 DOT 3000601 AT gmail DOT com> Date: Tue, 6 Apr 2010 17:10:30 +0300 Received: by 10.91.19.4 with SMTP id w4mr2113372agi.114.1270563031172; Tue, 06 Apr 2010 07:10:31 -0700 (PDT) Message-ID: Subject: Re: installer improvements From: wefwef wefwef To: cygwin AT cygwin DOT com Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com >> After using cygwin for years, and having some recent difficulty >> installing, I took a look at the installer to actually try and >> understand it (a novel concept I know!). Here are my thoughts on the >> gui - I think it could be made considerably more user friendly with >> some minor cosmetic changes. > > Personally, as a UI fanatic, I have no problem with it, and I get really > nitpicky about design. Lets hear your gripes, shall we? :) > >> The View button is being used to do two separate and unrelated tasks. >> - Switch between category and list view >> - Choose between partial, up to date, and not installed. >> I suggest that additional radio buttons be used to select between >> category and list view. > > They are *not* unrelated. In fact, that button keeps me *sane* how do you choose full view in category mode, full view in list mode, partial view in category mode, partial view in list mode, not installed in category mode, not installed in list mode ? > > What it does is change the perspective of looking at the packages; the fa= ct > that one view happens to be a tree view ("by category") instead of a > linear-list ("by is-installed" or "is-downloaded") is a happy 2nd or 3rd > order effect. *any other way of doing it would be a kludgy look*. So you are saying that the single button has a second order effect. Normally, you would put this 'second order effect' on a different gui component so it could be controlled separately. In effect, the view button tries to do two things - one is how you see what is currently selected (list or category), the other is to select what you see. Why on earth you would want to choose these functions with the same button I don't know. > >> The terms used are not the clearest (and believe me, things are tricky >> enough already) >> Partial =A0 =A0 =A0 =A0 =A0 =A0 =A0- =A0 I suggest change to 'to be be i= nstalled' or >> similar >> Up to date =A0 =A0 =A0 =A0- =A0 I suggest change to 'already installed' = or similar >> not installed =A0 =A0 - =A0 this is clear, no changes necessary > > Partial: Downloaded (or marked for download/Updatable), but not installed. > Up To Date: Downloaded, Installed and latest version. > Not Installed: Self Referential. Yes, I know you can explain the terms to me, good design however is self explanatory. > >> The way that (partial, up to date and not installed) is selected, via >> clicking on a button multiple times is not very common in gui design. > > It sure as hell is. Look at Synaptic: Uses the same ideology; If the debi= an > folks were braindamaged (which, frankly, some of them are) they would be > working on GNOME projects (Except Synaptic, which also has this ability) Where else? - I don't see it everywhere in all the gui's I use - I do however see radio buttons and drop down lists everywhere. > >> It doesn't allow you to see all of the available choices at once. I >> suggest replacing this button either with a group of radio buttons, or >> a drop down list similar to the way that you can change the view in a >> windows folder (details, list, icons). > > I believe the view-mode you're looking for is "full" No, I'm looking for a logical way of selecting the view mode. > >> I suggest that a new column be introduced, indicating whether a >> package is already installed or not. The installer has this >> information - it would be nice if it made it available to the user. > > There's already two of those -- they're called "Bin?" and "Src?" -- which > indicate if the binary and/or source packages are installed. Well, actually the column that does this is called Current, which was pointed out to me by Dave Korn. > >> Also, on an unrelated note, it would be very nice, to sort the list of >> mirrors in order of latency, or auto select the fastest available >> mirror. > > Lets see, the server list contains 30-50 servers. Setup.exe is > single-threaded for a reason until you get to the installation, where upon > it actually forks off some threads to do real work. > > Lets assume that you're not on the greatest of net connections... say > average ping of 180ms (thats my average ping to the local transfer > station)... > > 5 [pings] * 180 [~ms] *50 [servers] =3D =A045000 ms > thats 45 seconds your machine is *stopped* going and checking latency. > Choosing the fastest server could save a lot longer than 45 seconds in download time. This functionality would be useful and could be an option available to users if they wanted to automatically find the fastest server. > Inb4 "make the main server report them" -- not a good idea. > First, the main server's going to be right on the backbone, therefore giv= ing > *low* pings. This will create a false sense of hope and when it takes > forever for it down download even though the ping was low, users get grum= py. > > Inb4 "Have a round-robin DNS" -- Again, not a good idea. > Each server has a *different* set of packages because some of them are > purely *volunteer* maintained. Its just a sad fact that most (if not all)= of > the people who work on these projects make... $0 maintaining the servers, > packages and tools. > > AS for gripes about the deterministic-y of the installer: its entirely > deterministic. What you do, however, is not. That's a great way of investigating and fixing bugs - just say they don't exist and it's the users fault. Wow, I wish I could fix my bugs so easily. > > If you notice, there are three options in the installer for "setup mode" = -- > one is normal install off the net, another is download packages only, and > the third is install from local cache. > > The "download packages only" will churn whatever portion of a package tree > you wish down into a filesystem *locked to a particular server*. > > that is, if you choose "C:\Cygtemp\" as your "download directory" you will > find that there's a folder there for the URL of your chosen mirror. > > This lets you back up an entire server then turn around and install it on= a > network-less machine (by pointing it to "cygtemp"'s logical new location) > > Give You A Hint, I at the age of *13* was able to download and install and > configure Cygwin... 1.3 I think it was... It was definitely about five ye= ars > ago... onto a machine with no internet connection whatsoever. Clever you. What's that got to do with anything? You see, to end up with good quality software, you have to search out flaws, and fix them. Just because you could install 5 years ago, doesn't mean the installer is the best it could be. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple