Interests: News, Finance, Computer, Science, Tech, and Living

  • 0 Posts
  • 20 Comments
Joined 2 years ago
cake
Cake day: June 13th, 2023

help-circle




  • I think you just like the truth test. Frankly I have used Python for over 25 years and have been doing programming for almost 50 years in many different languages. If you think I am somehow a beginner, I would disagree. The truth test is just like so many other Python specific idioms that grow in number by the year. They are not at all obvious unless you are deep into Python. Moreover, the truth test and the len() test are not the same test. One might be able to use either in a specific case, but that is case specific and which is more readable is up to the developer and we may well disagree on that choice. The other consideration in Python, speed of writing code which is often why many of us use Python and that may lead to different choices too including based on habit.

    Lot of this reminds me of the Pascal vs. C debate of the 1980’s. Pascal was all about readability over compactness. C on the other hand, seemed to attract people that loved to write very compact code that was almost impossible to figure out on first glance. Me personally, I guess I’d choose C over Pascal but write the C in more of a Pascal authoring philosophy. Similarly, with Python, I often do not go for all of the Python idioms. Lot of that is just writing what I am thinking, and the rest is probably habit. If I am going to test 0 length then I’ll probably test zero length. I do not find it at all obvious that, oh, I want to test 0 length so the Python idiom for that is to truth test. I absolutely know that to be the case on certain types of objects, but it probably is not going to be my first choice.








  • Pick and choose. I actually like most of the Python Doc. Learned Python originally from their tutorial. Then learned key parts of the library. So I like those two documents. The other docs though can be deep. The language reference for example. Never read that except parts.

    I also had a book about Tkinter and another about Win32 Python programming. So I learned from those too. My first app was a data acquisition too with a Tkinter GUI. So I think a few books are good but maybe people do not do that now.

    For me, learned Python in a day mostly from their tutorial and the standard library reference, then it took me the next 9 months to actually get good at it. Then still learning stuff 25 years later. I did have an advantage. I had been programming for 20 years before I learned Python and had used half a dozen other languages.


  • This is basically my point. You need a support network. The setup requires technical skill and perseverance, or just buy a system preinstalled like from System76 or Dell. Once the system is setup, it requires almost nothing in terms of care and feeding. But when it does, yes you need a support network. This is all no different then Windows. People usually buy Windows preinstalled and if there is a problem get a friend to help, or take it to a place like Best Buy to fix it. People often do not have the same support options for Linux though. This is why I say Linux is not for everyone.

    First if your going to install Linux, install it on clean hardware. Meaning do not try for dual boot. You do not want any storage media you care about in a computer your playing with unless it is fully backed up and you know what your doing. One hint is use a really popular OS like Ubuntu to start. Hardware that is a few years old (not saying way old) works better paired with the latest possible version of whatever OS too. It can take some time to get FOSS support of hardware. The big hardware problem is running new hardware on old LTS support version for example, like when I upgraded the motherboard and CPU in my media center. Sometimes one has to have a newer kernel version then that or specially install some firmware. Both are beyond what a normal person could do. Mostly avoidable by using late version of Ubuntu rather then swapping out hardware with an older version. The other thing you could try is just play with Ubuntu on VirtualBox under Windows. Also web search and Ubuntu forums or Linux Forums are your friend.



  • I will say something different. Most people are best off with what they know and what the people they know use. It is all about support. I, my wife, and my father in-law all use Linux and Android with a Lot of FOSS stuff. They can because I can support them and my wife can support her dad and we are all local. My mom on the other hand uses Windows. She is half way across the country and my brothers family all know Windows. I do most of the support but they can too.

    Advantages. Around 2000 after spending maybe $20000 on hardware and software over the years with Apple and Windows just got tired of the treadmill. Overpriced monopoly software that was basically done still being soaked for meaningless upgrades. I have used Linux ever since

    Advantage today. Your not on the upgrade mill, your not the product, better FOSS support, it just works, your contribiting to an open and competitive market place. The major downsides are lack hardware support out of the box, and most people do not have a support network. Also if you want to run commercial software for some reason probably will not run on Linux, use Windows or whatever commercial platform in that case.

    At some level it is not that hard. Want to run FOSS, run Linux. Want to run commercial software, use a commercial platform.