Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:101532 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 17056 invoked from network); 4 Jan 2018 13:50:00 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 4 Jan 2018 13:50:00 -0000 Authentication-Results: pb1.pair.com smtp.mail=thruska@cubiclesoft.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=thruska@cubiclesoft.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain cubiclesoft.com designates 149.56.142.28 as permitted sender) X-PHP-List-Original-Sender: thruska@cubiclesoft.com X-Host-Fingerprint: 149.56.142.28 28.ip-149-56-142.net Received: from [149.56.142.28] ([149.56.142.28:34376] helo=28.ip-149-56-142.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 50/2A-23177-4013E4A5 for ; Thu, 04 Jan 2018 08:49:57 -0500 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: thruska@cubiclesoft.com) with ESMTPSA id 01D1B3E8C1 To: Lester Caine , PHP internals References: <00eca66a-775b-dcb6-65fd-335317d8d14e@lsces.co.uk> Message-ID: Date: Thu, 4 Jan 2018 06:49:49 -0700 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 MIME-Version: 1.0 In-Reply-To: <00eca66a-775b-dcb6-65fd-335317d8d14e@lsces.co.uk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Personal Home Page From: thruska@cubiclesoft.com (Thomas Hruska) On 1/2/2018 5:54 AM, Lester Caine wrote: > At what point did 'Personal Home Page' become 'Professional Home Page'? > > I sat down this morning to look at the sites that are still on the > 'TODO' list with a view to just what I can do with them and if the > clients could do anything to help. The short answer is NO since the > reason I'm nursing many of them is because the error messages when > trying to run them on a later version of PHP does require some level of > professional programming skill. Gone are the days one could simply > 'google' a quick fix! In many cases the sites simply give white screen > and a 'personal' user has little chance to recover so one moves the site > back to an older version of PHP until one can get around to looking at > it ... > > So how to proceed? Well I think it is time I cut many of these clients > loose, and to be honest they will be better off with one of the 'free' > hosting options that flood the market these days. They just reload the > content and change things like contact forms to what the hosting is > offering. That will get rid of all the .ASP sites that I've never had > time to convert to PHP, and all the static sites that probably never > needed PHP in the first place. The problem is I'm not the sort of person > who can say 'sod off' but I think I am going to have to a lot less > helpful in future :( But even saying no takes time ... > > A lot of the recent threads have been on a basis of 'Then you should > learn to program properly'. But PHP had a very short learning curve > years ago and one did not need to be a 'programmer' to write and > maintain simple dynamic sites? Admittedly today the infrastructure we > have to live with is a hell of a lot more complex than it was, but PHP > used to isolate that. Today there seems to be so many different > frameworks all of which compete with one another, and nothing that > supports the 'personal' user at all? Even MySQL code is being messed up > with MariaDB variations and very basic hosting gets problematic. Even > the claim that 'one does not have to use this new code' neatly sidesteps > the simple fact that the key libraries we rely on bring that very new > code into the framework and then one has to understand why things that > worked last update no longer work. That is not necessarily because 'the > code was faulty previously' and more likely because of the > 'improvements' to the library. Checking everything for every update of > browser, OS, PHP version, library change, urgent security fix, all take > time many of us don't have. > > Back in 1982 I earned a Masters Degree in 'Digital System', a fore > runner to 'Computer Science'. I've tried to keep up with the new bits, > but much of what is being loaded into PHP today has no use to a > 'Personal Home Page' user and should be in a separate library of tools > for the professional under the hood users ... YES a personal user needs > to know that they have a variable that stores a number, but they also > need to know the limits on the number perhaps depending on other > variables, simply requiring that an unbounded string is restrained to an > 'int' thing is of little practical use to many users ... they still need > the validation library whether they understand 'strict typing' or not. The above was very difficult to comprehend due to poor sentence construction. It seems like you are attempting to address code complexity and technical debt issues present in every code base, regardless of language. Around the start of every year, I evaluate where I want to be at the end of the year. I can only guess that you are doing something similar right now, which might explain the source of your e-mail to internals. I recommend reading about Norris Numbers: https://www.teamten.com/lawrence/writings/norris-numbers.html Every programmer has a Norris Number rating as does every organization. All programmers start at 2 Norris (i.e. the number of lines of application code that they are comfortable with writing and maintaining by themselves). Eventually they graduate to 20, 200, 2000, and so on as their skills improve. I have much more to say on the topic of Norris Numbers but I'll leave it at this. Languages similarly grow. Whether or not that growth is appropriate is up to the language designers. There are generally two schools of thought: Keep a language as-is so that new programmers (low Norris) have a chance to learn most of the language OR add new features that experts of a language (high Norris) can take advantage of. Great languages find a way to strike a balance between those options by making reasonable compromises while minimizing technical debt accrued in the language's design. IMO, over the last decade, PHP has generally done "okay" in this area while C++ has done "poorly". As to wanting direction for your business operations, one of the StackExchange sites might be a better place to ask. The simple solution is to provide a deadline: "Thank you for your business over the years. We are in the process of retiring our classic client portfolio. By [date goes here], your service on our platform will be terminated. Please back up your content and anything else that you want to keep. Here are some alternate services we recommend moving to that we think will work really well for you: [Service list goes here.] Again, thank you." Fairly simple phrasing and hopefully won't burn too many bridges. When the deadline passes, you terminate service and they are no longer your client. To avoid the stress of potentially having to deal with lots of unhappy people all at once, you can select a subset of the clients every month or two, adjusting the approach as you go. -- Thomas Hruska CubicleSoft President I've got great, time saving software that you will find useful. http://cubiclesoft.com/ And once you find my software useful: http://cubiclesoft.com/donate/