bcostlow
Joined 18 years ago
Joined 18 years ago
Rather than having the kind of parametric polymorphism you get with roles, Python prefers duck typing. And for the practical use of adding some composed, reusable, but orthogonal state and behavior to a class, Python provides multiple inheritance. For type-checking issues where duck typing is not sufficient, Python has Abstract Base Classes.
Now, I am aware that roles are not the same thing as duck typing or multiple inheritance, or ABCs. Not having roles in Python is a design decision. http://legacy.python.org/dev/peps/pep-3133/
But I still think in terms of the ability to use the language to write clean OOP code, Python is closer to Perl5 + Moose, than Perl5 alone is to Perl5 + Moose.
(Not a knock on Perl5 or Moose, between 2002 and 2005, I did a bunch of web and systems programming in Perl, and I wish Moose existed then.)
But I do a fair amount of Python, and a 20 minute cruise through the Moose docs leads me to believe that the most similar thing to Moose in the Python world is, well, Python.
Licensing doesn't just mean making an exact copy.
Let's say Reddit was the one that packaged up a story posted on /r/nosleep/ and sold film rights—the user who posted that stuff would have an uphill battle to get anything from Reddit's profits on the arrangement.
But, as a user, you can still make your own deals (you still own and can license the content yourself to others), and you probably can only make that deal because of Reddit exposure.
Reddit's user agreement doesn't mean jack if nobody is submitting anything.
"The time will come
when, with elation
you will greet yourself arriving
at your own door, in your own mirror
and each will smile at the other's welcome..."
Nothing against bodyweight stuff either. I do a light bodyweight routine two days a week to help deal with some back/posture issues ICF is not addressing well enough.
I'm down to 195, and stronger than I've been since I was in my 20s.
I tried one of those "vary your workout every day" programs last year, and quit. Not being consistent, as a newbie, made it hard to see progress, which demotivates. On ICF, while reaping noob gains, I see the weight I lift go up every session.
For me, value would be in putting in my exact workout, down to lift tempos, pauses, rest between sets, etc., and having an app run my workout for me, so I only have to think about proper form and pushing out that last rep.
Some of the ones I deal with are also running those XPs with old IE versions, 6 & 7. This is because they bought, then never upgraded, systems that won't run right with newer browsers.
I have found that developer productivity is higher, especially when it comes to maintenance. For me, all the tools in an IDE help offset Python or Ruby's simplicity when working in say, Java, when writing new code. But when reasoning about old code I haven't touched in a while, or looking at others' code, Python is easier for me to reason about.
If casting about for a reason to learn any new language, I can think of a few. Understanding another language and how you approach problems with it may provide insight on how to better use your main language. Your career may be long, and your main language may not be popular forever. When acting as a hiring manager, I look for people who know multiple languages, even if I only need one. Especially if they tackled learning them outside of school. It shows both passion and initiative.
If I search for my name, it shows the map with a pin at my location, near Columbus, OH, USA. If I just start from the home page, no matter how much I zoom in, I don't show up.
So whether or not the site users are a good representation of the interest in the world, the default map seems a poor representation of their users.
Edit: Brutasse posted on the thread explaining this right as I posted.
The software is written in MUMPS, which has a built in (sort of) document oriented data storage layer.
http://en.wikipedia.org/wiki/MUMPS
You can read the Wikipedia page and look at some sample code and draw your own conclusions on whether that's better or worse.
Here's how I stayed social. First, I used the time you would spend commuting or going out to lunch to get non-work chores done. I'd do laundry in the morning when I'd otherwise be in the car. I cut the grass or worked out during lunch, etc. I'd already be fixing dinner during everyone else's evening drive time.
That freed up my weekday evenings to be social, since I wasn't in after work commute-cook-chores hell.
I'd spend time at programming language groups; taking classes related to hobbies (brewing, a little woodworking); going out with friends to nice restaurants on Wednesdays when they weren't crowded; and doing some social volunteering. I got involved in running a couple of software conferences and joined a wine-and-movies social club.
I found—since I am a "gregarious introvert"—that not having to be around coworkers all day left me more energized to socialize with friends and family in the evenings.
And instead of a social circle dominated by coworkers, I have one that provides interactions with people from all walks of life, and have friends scattered around the globe to visit when I retire.
If you plan well and work at it, you can be more social working from home.