It’s well said, I don’t give a f*** about other languages. NSA-proof, 
anonymized 2048-bit key rendezvoused connection framework in 33 classes. 
Includes user definable cipher and encoder. SmalltalkHub talkin ParrotTalk.

http://www.squeaksource.com/Cryptography/ParrotTalk-HenryHouse.3.mcz

- HH

On Wed, Oct 25, 2017 at 18:46, Andrew Glynn 
<[aglyn...@gmail.com]("mailto:aglyn...@gmail.com";)> wrote:

> There’s other questions that are relevant to me:
>
> Do I give a f*** about cool looking web apps?  No, I don’t use web apps if in 
> any way I can avoid it.
>
> Do I give a f*** about mobile apps?  No, the screen’s too small to read 
> anything longer than a twit, or anyone with anything worthwhile to say.
>
> Do I give a f*** about the number of libraries in other languages?  No, 
> because most of them are crap in every language I’ve had to work in, and the 
> base languages are crap so they have to keep changing radically, and 
> libraries and frameworks therefore also have to and never get any better. The 
> few that are worthwhile I can almost always use from Smalltalk without a 
> problem (read, Blender, ACT-R and Synapse, since every other 
> library/framework I’ve used outside Smalltalk has been a waste of time).
>
> Do I give a f*** about implementing a complex piece of machine learning 
> software in 22 hours, compared to 3 months for the Java version?  Well, 
> actually yes, I do, because that was 3 months of my life down the toilet for 
> something that is too slow to be useful in Java.
>
> Any argument depends on your priorities. I’ve written tons of web apps, 
> because I needed to get paid.  I’ve written better shitty mobile apps than 
> the average shitty mobile apps.  However, I’m not going to do any of that any 
> longer in crap that never improves, because after 26 years the irritability 
> it produces is more than it’s worth.
>
> A few weeks ago, a recruiter that specializes in Smalltalk called me about a 
> job, although they were well aware I live 1500 miles away from the city I 
> lived in when I had worked through them, to see if I’d be willing to move 
> back there for a job.  That sounds like another ‘there aren’t enough 
> Smalltalk developers", but it wasn’t, because the job wasn’t writing 
> Smalltalk.  It was writing Java.
>
> The person hiring, though, wouldn’t look at anyone who didn’t write 
> Smalltalk, because "people who grew up with Java don’t know how to write 
> code".  I don’t agree with that, I’ve known a (very few) good Java 
> developers.  I would say, though, that I’ve known far more incompetent ones 
> than good ones, and I can’t think of any incompetent Smalltalk developers off 
> the top of my head.
>
> Nor have I ever heard a developer in Smalltalk, or Haskell, or LISP, or even 
> C, complain about how hard maintaining state is or coming up with various 
> hacks to avoid it, which seems to be the main point of every JavaScript based 
> ‘technology’.  An application is by definition a state-machine, which implies 
> plenty about JS developers on the whole.
>
> If you’re a good developer you can write good code in (nearly) anything.  My 
> question then is why would you want to write in crap?  The better question is 
> why aren’t there more good developers in any language?
>
> Every project I have been able to do in Smalltalk, though, has had one thing 
> in common, the "shit has to work".  Companies do use it, in fact I could name 
> 4 large enterprises I’ve worked for who’ve written their own dialects, and 
> they all use it only when "shit has to work".  They know it’s more 
> productive, they also know using it for more things would increase the 
> availability of Smalltalk developers.
>
> Why do they not do it?  One reason, though it takes a while to recognize it, 
> because management doesn’t admit even to themselves why they do it, or not 
> very often.  Being inefficient, as long as it doesn’t ‘really’ matter, is an 
> advantage to large enterprises because they have resources smaller 
> competitors don’t.
>
> Why don’t their competitors do it?  Because they can’t see past an hourly 
> rate, what’s fashionable, or just new, or because their customers can’t.  Put 
> more generally, average stupidity that isn’t corrected by the market.  
> Fashion affects smaller companies more than larger ones, because they can’t 
> afford a few customers walking away because they wanted an app in Electron, 
> even if they can’t give any relevant reason for wanting it, and even the 
> samples on the Electron site don’t work.
>
> Enterprises can, and do use Smalltalk when it matters.  When it doesn’t, it’s 
> to their advantage to promote things that are inefficient, buggy and 
> unreliable.
>
> Cost is relevant, but not in the simple way people look at things.  A crucial 
> but rarely mentioned perspective on its relevance is that while Java based 
> software runs TV set top boxes, Smalltalk based software runs things like 
> medical equipment, automated defense systems, tanks, etc.  Cost becomes 
> largely irrelevant when ‘shit has to work’.
>
> Productivity is primarily relevant to less talented developers, in an 
> inversely sense, since unproductive environments and attitudes have a 
> leveling tendency in general, and more specifically make accomplishing what 
> the less talented are capable of in any environment sufficiently laborious 
> for them to have a role.  Capability in Smalltalk, as implied by the person 
> hiring for the Java role I mentioned, is a fairly decent means of judging 
> whether someone is a so-so developer or a good one.
>
> The productivity argument is realistically only relevant in the context of an 
> already higher hourly cost.  Given that it is relevant at that point, 
> companies that know Smalltalk is more productive would use it outside things 
> that have to be 100%, if their own productivity were relevant to the same 
> degree that competitors’ productivity is inversely relevant.
>
> All these ways of looking at it are contingent perspectives though.  Yes, if 
> the number of libraries is relevant to you, Smalltalk is less attractive, but 
> that’s only a contingent phenomenon based on the relative popularity of Java 
> and JavaScript, as a result it can’t be used as explanatory for that 
> popularity.  All the ways of looking at it that are fully determinate are 
> determinate via contingencies of that kind, which for the most part are 
> precisely the other perspectives, including productivity, cost, availability 
> of developers, etc.  None of them is in itself anything but a result of the 
> others.
>
> If availability of developers is contingent on popularity (and further, 
> popularity contingent on industry attitudes), to use an example already 
> mentioned in Joachim’s post, then his simultaneous posit of library 
> availability is if anything more contingent on the same popularity, so 
> positing it as a cause and not a result, or merely a correlate, of popularity 
> is incoherent.  We can go one step further, and demonstrate that even when 
> large enterprises make something that works reliably available, they fail to 
> promote and support it, which destroys the market for reliable tooling by 
> simultaneously owning it while not promoting it, something IBM is 
> particularly good at.  But IBM can’t (and if they can’t, neither can any 
> other company) operate that way without the tacit agreement of the industry.
>
> To understand it in a more general way, software development has to be looked 
> at in the context where it occurs, and how it’s determined to a large degree 
> by that context, with a specific difference.  That difference is itself 
> implicit in the context, i.e. capitalism, but only purely effective in 
> software development. It’s a result of virtualization as an implicit goal of 
> capitalism, and the disruptions implicit in the virtual but so far only 
> realized completely in software.  In terms of that understanding, the 
> analysis of virtualization and disruption as inherent to capitalism is better 
> accomplished in Kapital than in any more recent work.
>
> Or you can simply decide, as I’ve done recently, that working in ways and 
> with tools that prevent doing good work in a reasonable timeframe isn’t 
> worthwhile to you, no matter how popular those ways and tools might be, or 
> what the posited reasons are, since at the end popularity is only insofar as 
> it already is.  What those tools and methods are depends to a degree on your 
> priorities, but if developers are engineers those priorities can’t be 
> completely arbitrary.  Engineers are defined by their ability to make things 
> work.
>
> Software as virtual is inherently disruptive, and the software industry 
> disrupts itself too often and too easily to build on anything. A further 
> disruption caused by developers, as engineers, refusing to work with crap 
> that doesn’t, i.e. insisting on being engineers, while in itself merely an 
> aggravation of the disruptive tendencies, might have an inverse result.
>
> Using a stable core of technologies as the basis for a more volatile set of 
> products, in the way nearly every other industry does, is the best means we 
> know of to build things both flexibly and reasonably efficiently.  The 
> computer hardware industry is the extreme example of this, while the software 
> industry is the extreme contradiction.
>
> From: Pharo-users <pharo-users-boun...@lists.pharo.org> on behalf of David 
> Mason <dma...@ryerson.ca>
> Reply-To: Any question about pharo is welcome <pharo-users@lists.pharo.org>
> Date: Tuesday, October 24, 2017 at 11:52 AM
> To: Any question about pharo is welcome <pharo-users@lists.pharo.org>
> Subject: Re: [Pharo-users] Smalltalk Argument
>
> PharoJS is working to give you that mobile app/browser app experience.  As 
> with others, we’re not there yet, but getting there.  See 
> [http://pharojs.org]("http://pharojs.org";)
>
> The 67% loved means that 67% of people using Smalltalk (or perhaps have ever 
> used it) want to continue - so it’s presumably a high percentage of a 
> smallish number of people.
>
> On 20 October 2017 at 03:23, 
> [jtuc...@objektfabrik.de]("mailto:jtuc...@objektfabrik.de";) 
> <[jtuc...@objektfabrik.de]("mailto:jtuc...@objektfabrik.de";)> wrote:
>
>> First of all: I’d say the question itself is not a question but an excuse. I 
>> am not arguing there are enough Smalltalkers or cheap ones. But I think the 
>> question is just a way of saying "we don’t want to do it for reasons that we 
>> ourselves cannot really express". If you are a good developer, learning 
>> Smalltalk is easy. If you are a good developer you’ve heard the sentence 
>> "we’ve taken the goos parts from x,y,z and Smalltalk" at least twice a year. 
>> So you most likely would like to learn it anyways.
>>
>> A shortage of developers doesn’t exist. What exists is an unwillingness of 
>> companies to get people trained in a technology. If Smalltalk was cool and 
>> great in their opinion, they wouldn’t care. It’s that simple. As a 
>> consultant, I’ve heard that argument so often. Not ferom Startups, but from 
>> insurance companies, Banks or Car manufacturers who spend millions on 
>> useless, endless meetings and stuff instead of just hiring somebody to teach 
>> a couple of developers Smalltalk. It’s just a lie: the shortage of Smalltalk 
>> developers is not a problem.
>>
>> And, to be honest: what is it we actually are better in by using Smalltalk?
>> Can we build cool looking web apps in extremely short time? No.
>> Can we build mobile Apps with little effort? No.
>> Does our Smalltalk ship lots of great libraries for all kinds of things that 
>> are not availabel in similar quality in any other language?
>> Are we lying when we say we are so extremely over-productive as compared to 
>> other languages?
>>
>> I know, all that live debugging stuff and such is great and it is much 
>> faster to find & fix a bug in Smalltalk than in any other environment I’ve 
>> used so far. But that is really only true for business code. When I need to 
>> connect to things or want to build a modern GUI or a web application with a 
>> great look&feel, I am nowhere near productive, because I simply have to 
>> build my own stuff or learn how to use other external resources. If I want 
>> to build something for a mobile device, I will only hear that somebody 
>> somewhere has done it before. No docs, no proof, no ready-made tool for me.
>>
>> Shortage of developers is not really the problem. If Smalltalk was as cool 
>> as we like to make ourselves believe, this problem would be non-existent. If 
>> somebody took out their iPad and told an audience: "We did this in Smalltalk 
>> in 40% of the time it would have taken in Swift", and if that something was 
>> a must-have for people, things would be much easier. But nobody has.
>>
>> I am absolutely over-exaggerating, because I make my living with an SaaS 
>> product written in Smalltalk (not Pharo). I have lots of fun with Smalltalk 
>> and - as you - am convince that many parts of what we’ve done so far 
>> would’ve taken much longer or even be impossible in other languages. But the 
>> advantage was eaten by our extremely steep learning curve for web 
>> technologies and for building something that works almost as well as tools 
>> like Angular or jQuery Mobile.
>>
>> Smalltalk is cool, and the day somebody shows me something like Google’s 
>> flutter in Smalltalk, I am ready to bet a lot on a bright future for 
>> Smalltalk. But until then, I’d say these arguments about productivity are 
>> just us trying to make ourselves believe we’re still the top of the food 
>> chain. We’ve done that for almost thirty years now and still aren’t ready to 
>> stop it. But we’ve been lying to ourselves and still do so.
>>
>> I don’t think there is a point in discussing about the usefulness of a 
>> language using an argument like the number or ready-made developers. That is 
>> just an argument they know you can’t win. The real question is and should 
>> be: what is the benefit of using Smalltalk. Our productivity argument is a 
>> lie as soon as we have to build something that uses or runs on technology 
>> that has been invented after 1990.
>>
>> Okay, shoot ;-)
>>
>> Joachim
>>
>> —
>> ————————————————————————
>> Objektfabrik Joachim Tuchel          
>> mailto:[jtuc...@objektfabrik.de]("mailto:jtuc...@objektfabrik.de";)
>> Fliederweg 1                         
>> [http://www.objektfabrik.de]("http://www.objektfabrik.de";)
>> D-71640 Ludwigsburg                  
>> [http://joachimtuchel.wordpress.com]("http://joachimtuchel.wordpress.com";)
>> Telefon: [+49 7141 56 10 86 0]("tel:%2B49%207141%2056%2010%2086%200")        
>>  Fax: [+49 7141 56 10 86 1]("tel:%2B49%207141%2056%2010%2086%201")

Reply via email to