Hello!

Discussion in 'Member Introductions' started by JasKinasis, Jun 17, 2014.

  1. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    Hello all. I've just signed up to the site and thought I'd better introduce myself!

    My name's Jason, I'm a long time Linux user. After many years of flirtation with Linux at home, I finally made a complete, full-time switch to Linux and free/libre open source software 6 years or so ago and I haven't looked back since. At my current job I am forced to use M$ Winblows, but fortunately Cygwin provides me with all of the warm, gooey, Unixy tools that M$ does not! Heh heh! :D

    I'm a professional C/C++ programmer by trade, but I have a good, working knowledge of several other programming languages (which I won't list here). Currently using Kubuntu 14.04 on my main laptop, but I seem to spend most of my time using a dwm session rather than the plasma desktop - I love dwm!

    I'm also on the Vim side of the editor wars, but I'm not a zealot! I'm not going to flame anybody over their editor preferences - to each, their own! :)

    To appease any zealous disciples of the church of Emacs out there: In my defense, I have tried to learn Emacs many times. I just can't seem to get my head around it. The keyboard shortcuts are completely counter-intuitive and alien to me, I can never remember them. Vim just seems to suit me better. But that's just me! Perhaps my inability to grok Emacs is due to some form of mild retardation on my part! Heh heh! :D

    I also drum for a progressive metal band called Kinasis and teach drums from time to time.
    Right, this intro is getting deep into TL;DR; territory now. So I'll shut up!
    Looking forward to discussing all things Linux and hopefully contributing some useful answers/opinions.
    See you on the boards!
    Jas.

    DevynCJohnson likes this.
  2. unixfish

    unixfish Member

    Messages:
    44
    Likes Received:
    25
    Trophy Points:
    18
    I started my career on VMS. I could never find another editor that was similar to TPU, so I installed Emacs and forced myself to learn it. Long learning curve, I agree.

    Once it clicked, I cannot image ever going back to something else. But, I also understand that arguing about "what is the best editor" is like arguing about the best religion or the best government or the best car or the best guitar (you probably know my choice on that!)

    If it work for you, use it!

    I also am afflicted with the "work machine Windows 7" syndrome. I agree - cygwin saves my sanity. My home machine is Ubuntu, and I recently installed Cinnamon to use along side of Unity, making my machine essentially Mint.

    I only do a bit of metal - I do a bit of just about everything, although I am more of a classic rocker. Good to see a fellow musician on the board!
  3. DevynCJohnson

    DevynCJohnson Well-Known Member Staff Member Staff Writer

    Messages:
    1,381
    Likes Received:
    1,094
    Trophy Points:
    113
    Aloha and welcome to Linux.org! There is a lot you can learn here. You can ask questions, read articles, debate, etc. Enjoy!
  4. unixfish

    unixfish Member

    Messages:
    44
    Likes Received:
    25
    Trophy Points:
    18
    DevynCJohnson - Debate? So, what is the best editor? What is the best language? What is the best distro? What is the best hardware? And what tones should you tune your drums to for the best sounding mix when recording? And should you re-tune for different songs?

    Kidding, Kidding, Kidding. Just poking the bear a bit.

    Ja****asis - welcome!
    JasKinasis and DevynCJohnson like this.
  5. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    Cheers chaps!
    {feels welcome}
  6. unixfish

    unixfish Member

    Messages:
    44
    Likes Received:
    25
    Trophy Points:
    18
    Wrong syntax.

    Welcome++;
    JasKinasis and DevynCJohnson like this.
  7. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    ++Welcome;
    Would be the more efficient way to write it. The pre-increment operator involves less overhead than the post-increment operator! Hee hee! XD
  8. DevynCJohnson

    DevynCJohnson Well-Known Member Staff Member Staff Writer

    Messages:
    1,381
    Likes Received:
    1,094
    Trophy Points:
    113
    That is very clever. I primarily use Python3 -

    global clever_users
    clever_users = ['Ja****asis', 'unixfish']
    JasKinasis and Mitt Green like this.
  9. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    I have a lot of time for Python. I've been using it on and off (at work and at home) for at least 10 years now. It's a great language, very expressive. Thanks to the numerous libraries that are available and the terseness of the syntax, it's amazing how much functionality you can get out of such comparatively little code. I haven't delved into Python 3 too much, but I have a good knowledge of 2.7 and earlier!

    I started learning Python3 just after it was released as a beta. But because there were very few libraries ported to Python3 at the time, I decided to give it a miss until more libraries were available and went back to using the 2.x versions. Probably about time I went back and took another look at it!

    I'm currently trying to get my head around Haskell, which is completely different to any programming languages I've studied before... Haskell forces you to think about solutions to problems in a totally different way to imperative languages like C, C++, Java, Python etc. It's certainly a bit of a culture shock!
    DevynCJohnson likes this.
  10. unixfish

    unixfish Member

    Messages:
    44
    Likes Received:
    25
    Trophy Points:
    18
    Haskell is culture shock compared to Java / C++? Crikey.

    I started with C years ago. Most recently, my jobs seem to revolve around Perl. I've implemented lots of systems in Perl; quick, easy, and efficient if you keep to some rules. In my primary job, I've been pushed into C# and Object Oriented. I struggle with that - I am a functional programmer to the core, and have been since the mid 80's. Actually, as more of a SysAdmin, I don't delve that deep anyhow. Middle aged dog / new tricks issue. I just cannot seem to wrap my head around that level of abstraction, and forget about code / watching your memory stack / data typing / etc.

    Now Haskell seems to be another level beyond that?

    ++cringing;
    DevynCJohnson likes this.
  11. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    Heh heh, well my attempt to learn Haskell is my first foray into pure functional programming. After so many years of imperative languages, both procedural and OO, I have trouble grokking the Haskell way of doing things.
    Once the penny finally drops and everything clicks into place, I'll be fine with it. But until then I'm happy to remain more than a bit bemused by it all!
  12. Jim Laughlan

    Jim Laughlan Active Member

    Messages:
    129
    Likes Received:
    70
    Trophy Points:
    28
    Hello Jas!
    Great to meet you!
    JasKinasis likes this.
  13. rstanley

    rstanley Active Member

    Messages:
    110
    Likes Received:
    56
    Trophy Points:
    28
    I disagree! If you are talking about using the pre and post-increment operators in C, it depends on how you use it! (The same operators in another language might not be as efficient.)

    In a test I just did:
    For a simple "x++;" or "++x;", the assembler code is exactly the same!
    For "y = ++x;" vs. "y = x++;", the difference is only One instruction (Pre), vs. Two instructions (Post)!

    Considering the speed of the modern processors, I won't loose any sleep over it! ;^)
  14. ryanvade

    ryanvade Administrator Staff Member Staff Writer

    Messages:
    1,398
    Likes Received:
    454
    Trophy Points:
    83
  15. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    I learnt C/C++ when processor speed and memory usage was still an issue.
    According to the specification for the pre-increment and post-increment operators, the post-increment operator requires one extra operation to perform.

    To explain the differences in behaviour that you saw:
    In the case of x++; vs ++x;
    According to the standard definitions for the two operators, there should still have been a one op difference here. But because the increment statements are on their own - i.e. they aren't part of an expression; in the case of x++, the compiler most likely optimised it to use ++x instead. That would explain the lack of difference there. That does seem like a pretty sane optimisation to make. But some compilers out there might not implement this, IDK!

    Whereas with y=++x; and y=x++;
    Because the increments are part of an expression, the compiler will definitely not optimise because the behaviour of the two operators is subtly different. So we get the expected one instruction difference.

    Nowadays, what with exponentially increased processor speeds; that one op might not make a massive difference. But back in the day, when making a large number of iterations in a program; those single ops soon added up and could add up to a significant time saving! Also optimising compilers have come a long way since I started learning C/C++.

    Regardless of processor speed; technically, pre-increment is still more efficient than post-increment. So I think my point still stands, even if it was made in jest! ;) Heh heh!

    Linux.org, where even jokes are scrutinized for technical accuracy! XD Heh heh!
    Last edited: Jun 24, 2014
  16. JasKinasis

    JasKinasis Member

    Messages:
    74
    Likes Received:
    36
    Trophy Points:
    18
    Ryan, I don't think there is any specific lack of love for Java in this thread, it just never came up in conversation until you mentioned it!

    I don't mind Java. Not my favourite programming language to use, but it has its uses. I can quite happily program in it. Definitely a language I have 'in my toolbox' as it were!

    But it's not my least favourite language by a long shot. That accolade goes to VB... Ugh, I hate VB with a passion! Mainly because of a previous job where I was lumbered with fixing/maintaining some poorly designed VB apps developed by clients/customers of my employers. Whoever created these programs were evidently NOT programmers!

    So, despite being trained and employed as a C/C++ programmer; I had to sit there and learn VB from scratch whilst trying to debug and fix these terrible programs. I cannot emphasise how badly designed and implemented these programs were. The worst spaghetti code I'd ever seen, tons of redundancy, no design documentation or comments in the code etc. So I pretty much had to do a complete rewrite. To top things off, I had some really unrealistic deadlines to meet, so there was more than a little bit of stress involved!

    That entire experience fostered my absolute hatred of VB and VB programmers (or non-programmers!). Before being given that task, I'd never seen a line of VB code before. By the time I was finished, I never wanted to see a line of VB code again!

    A year or so after that episode, my employer was asked to create a .NET web service for them written in VB.NET. And because I dealt with the last load of VB stuff for them, guess who was given responsibility for that.... Oh yeah! ME! But I refused to write it in VB and put forward a technical case for implementing it in C#. Fortunately our management and the customer accepted that and I used C# instead!
    Last edited: Jun 24, 2014
    Jim Laughlan likes this.
  17. Rob

    Rob Administrator Staff Member

    Messages:
    575
    Likes Received:
    233
    Trophy Points:
    43
    Welcome to the forum! You get points in my book for your vim-ness!
    JasKinasis likes this.
  18. unixfish

    unixfish Member

    Messages:
    44
    Likes Received:
    25
    Trophy Points:
    18
    VB. Ugh.

    I was given a project to support that was VB. Just a small request and tracking system. I didn't know VB, but it is easy enough to read. My updates were something like:

    I need a while loop. Google, Google, ah. Update. I need a database call. Google, Google, ah. Update. I need to break / wrap this line so it's not so long. Google, Google, ah. Update. I need...​

    Ah, the joys of programming in a language you don't know. I've had to do that with C# as well, which is much hard to do with Google; there are so many ways of doing the same thing, and it seems few of the programming sites mention what modules you need to include in a "using xxx.xxx.xx" statement. Maybe it's my lack of familiarity? Other language web sites reference object that need to be included, but a lot of .net sites don't. It must be some insider Microsoft joke.

    Joke is on them, however. We use Linux.

Share This Page