Author Topic: My Software  (Read 8279 times)

Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
My Software
« on: September 10, 2014, 08:21:49 PM »
I have made a small effort and fixed my (very frugal) home page.
On it you can find a few of my software projects.
If anybody is interested in trying any of them I'm always happy to hear you opinions.
You find my home page at gsyren.ownit.nu

Offline DSig

  • Heavy Poster
  • *****
  • Posts: 1110
    • View Profile
Re: My Software
« Reply #1 on: September 12, 2014, 01:24:57 AM »
Cool .. i will take a look.  I always love playing with sw .. many times more fun than writing it <G>
Thank you
David

Offline Blair

  • Heavy Poster
  • *****
  • Posts: 722
  • Country: us
  • ¡umop apisdn w,I
    • View Profile
    • My DVD Collection
Re: My Software
« Reply #2 on: September 12, 2014, 07:53:40 PM »
Thanks Gunnar. I do not have a use for it right now, but I have saved GsyLaunch. I am sure it will come in handy at some point. (Nothing wrong sticking with VB3 when it does the job. I still have VB6 installed.)
I have a collection.
It can be found here.
No need to check it often.
I update it only twice a year!


Never go to bed mad. Sleep on the couch instead.

There are a few broken branches in every family tree.

Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
Re: My Software
« Reply #3 on: September 12, 2014, 10:34:44 PM »
Well, I started out with VB3 back in the nineties, but I have moved along and by now I use Visual Studio 2012, with VB and WPF. So far I haven't come across a task that couldn't be solved with VB, so I never had any incentive to switch to C#.

Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
Re: My Software
« Reply #4 on: September 15, 2014, 12:48:29 PM »
To whom it may concern:

GsyLaunch has been updated to version 1.1.2

New in this version:
Ability to change position of tabs and command buttons through drag-n-drop.
Ability to specify command line arguments.
If a non-exe file has a program specified (rather that opening it with the associated program), the icon for that program is displayed.

Bug fix:
Empty tabs were not saved.
« Last Edit: September 15, 2014, 05:21:03 PM by GSyren »

MEJHarrison

  • Guest
Re: My Software
« Reply #5 on: September 15, 2014, 07:30:22 PM »
So far I haven't come across a task that couldn't be solved with VB, so I never had any incentive to switch to C#.

What a refreshing attitude.  Our new team lead here at work told us our team was unable to complete a large project we have because we aren't up to speed on MVC.  I guess all that we accomplished before he arrived with his $10 words and $0.05 of knowledge doesn't count.  :stars:

Offline DJ Doena

  • Administrator
  • Mega Heavy Poster
  • *****
  • Posts: 6722
  • Country: de
  • Battle Troll
    • View Profile
    • My Blog
Re: My Software
« Reply #6 on: September 15, 2014, 07:55:41 PM »
Well, I started out with VB3 back in the nineties, but I have moved along and by now I use Visual Studio 2012, with VB and WPF. So far I haven't come across a task that couldn't be solved with VB, so I never had any incentive to switch to C#.

The following is all professionally:

I used to program VB6 and then switched to VB.Net when .Net itself was still in the beta phase in early 2002. Then I programmed a project in VB.Net for few years until I switched into another project where they were using C#. I'm still in that project.

Privately I've pretty much made the same switch because it's easier to program in the same language as you do at work.


But I do start to miss .Net's early years where you couldn't do that much syntax-wise as you can do today. And while many new language features are really great to make it easier to program I also get the feeling that the code itself starts to lose its readability with all the LinQ syntax and Lambda expressions and whatnot.

Also you need to be careful to truly understand these new constructs, especially when they contain delayed execution statements.

Take the following for example:

Code: [Select]
int[] myArray { 1, 3, 5, 7, 9}
int threshold = 3;
var result = myArray.Where(num => num >= threshold);
threshold = 6;
foreach(int num in result)
{
  Console.Writeline(num);
}
threshold = 9;
var secondResult = result.ToList();
foreach(int num in secondResult)
{
  Console.Writeline(num);
}

For those inexperienced with LinQ, this line
Code: [Select]
var result = myArray.Where(num => num >= threshold);

Is to be read as follows:

Declare a variable named result. The type of the variable will be determined by the type of the return value of the .Where() function
Now iterate over every element of myArray and check if that element is equal or larger than the numer in threshold.

What do you think is the output of these two for iterations in the above code?

Here's the solution:
Code: [Select]
7
9
Code: [Select]
9

But why, if the threshold was 3 when the .Where() function was called?

Because Lambda expressions are delayed code execution statements. They're not executed when the line of code is processed, they are called when the code is actually needed. And when is it needed? When you either start an iteration with a for statement or you actually turn it into a list with .ToList().


As you can see that same Lambda statement is executed twice over the course of this small snippet which is something to keep in mind for performance considerations as well.

If you want to achive to code to behave as you actually would on first glance, you'd need to do this:

Code: [Select]
int[] myArray { 1, 3, 5, 7, 9}
int threshold = 3;
var result = myArray.Where(num => num >= threshold).ToList();
threshold = 6;
foreach(int num in result)
{
  Console.Writeline(num);
}
threshold = 9;
var secondResult = result;
foreach(int num in secondResult)
{
  Console.Writeline(num);
}

Now it will be

Code: [Select]
3
5
7
9
Code: [Select]
3
5
7
9
Karsten

Abraham Lincoln once said The trouble with quotes from the internet is that you never know if they're genuine.

my Blog | my DVD Profiler Tools


Offline Tom

  • Mega Heavy Poster
  • *******
  • Posts: 6280
  • Country: de
    • View Profile
    • Cinematic Collection Viewer
Re: My Software
« Reply #7 on: September 15, 2014, 08:57:18 PM »
When I switched from VB6 to .NET, I also first started to work with VB.NET, because I thought it would be easier for the switch. But in retrospect I regret it, that didn't use C# from the beginning, because I like it much better. And now I have to maintain a program in VB.NET, when in all others I am using C#. And every time it bothers me.
Not only because of the syntax (which I am now used to C#), but things like different behaviors in some stuff. E.g. if-cases evaluation. VB.NET always evaluates all conditions. C# stops if a condition already fails. Makes it bothersome in VB. For one thing when checking for null values (you have to cascade if-cases), and for performance reasons (also needs cascading if-cases to avoid unnecessary execution time).

The same with Windows Forms and WPF. I regret it, that I didn't take time to get into WPF much earlier. Switching to WPF is near impossible, if you didn't really bother with proper MVVM.



Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
Re: My Software
« Reply #8 on: September 15, 2014, 10:22:36 PM »
Actually you don't have to cascade if-clauses any longer. You can use AndAlso and OrElse. But I do think they made a wrong choice when they designed VB.Net in that they went with the way classic VB worked rather than make VB and C# handle And and Or the same way.

VB is "talkier" than C#. Some see this as a drawback. I don't. In my opinion it makes the code easier to read. If you're looking for the end of an if-clause you look for End If. If you are looking for the end of a For loop you look for End For. If you are looking for the end of a subroutine you look for End Sub and so on. In C# all those are right braces.

C# is shift sensitive and VB is not. And I prefer it that way. It decreases the risk of making a mistake. There are really very few reasons to have the same name in different shift for variables.

Smartcoding is probably easier in C#, but I don't think that's a good thing. Smartcoding makes the code harder to maintain for other people. Let's face it - maintaining code that someone else has written is a pain in the butt in the best of circumstances. Clever coding tricks do not make it any easier.

Some things appeared in C# before they got to VB. I believe Lambda expressions was one of those things. Personally I have never found that I needed to use them. On the other hand VB has a few shortcuts that (afaik) C# does not have, like the My extensions. It's nothing you can't do in C#, it's just handier. My.Application.Info.Version.toString gives you your programs version in one easy sentence, for example.

But hey, it's all a matter of taste.

I love WPF, though some aspects of it is murder. Basic UI design (which I've done a lot) is so much easier in WPF. And I have managed without MVVM. I probably should have learned about MVVM, but it was one of those things where something else was always more important to get done. Now for my small hobby projects it doesn't seem worth the bother...

Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
Re: My Software
« Reply #9 on: September 16, 2014, 08:14:42 PM »
To whom it may concern (again).

GsyLaunch has been updated to version 1.2.
You can now add some special commands, like Open Control Panel, Shutdown, Standby and 5 more.
You find the documentation here.
« Last Edit: September 16, 2014, 10:18:43 PM by GSyren »

MEJHarrison

  • Guest
Re: My Software
« Reply #10 on: September 16, 2014, 08:43:09 PM »
I've always been a C# guy.  Makes sense since I've always been a fan of C & C++ even thought I've actually had a couple jobs working with various flavors of BASIC.  But when .NET first came out, I did one of my first things in VB.NET.  We hadn't standardized on a language at that point (now we strongly favor C#), so I thought I should get both feet wet as it were.  And now I hate revisiting that code!  Though I have no regrets seeing how the other side lives.  I think every .NET programmer should do at least 1 small thing in the opposing language.

I've enjoyed the WPF comments.  I've finished all my required training for work (including MVC / MVVM) and plan to look into the WPF stuff next.  I've been a web guy since 1996, but have actually always preferred writing Windows apps.  So I'm kind of looking forward to it.

Of course my new BIG thing is iOS programming.  Particularly with Swift.  I found Objective-C to be a bit too '80s for my taste, but Swift is kind of a fun language.  Or hopefully will be now that it's out of beta.  I'll admit it was annoying to get my code to compile, then get the latest beta and have 150 errors because they were still nailing down the language & syntax.  Now that it's somewhat stabilized, I might have to attempt getting my app to run again.

Offline GSyren

  • Heavy Poster
  • *****
  • Posts: 1083
  • Country: se
    • View Profile
Re: My Software
« Reply #11 on: September 16, 2014, 10:36:24 PM »
It's always beneficial to get to know a variety of programming languages. I started out with IBM 360 Assembler back in 1974. I've programmed in COBOL, Databus (later renamed PL/B), DASL (DAtapoint Systems Language - somewhat like Pascal), C and VB. I dabbled in some old Basic under CP/M back in the seventies, and I have written one (1) program in C#. I worked with several report generators, some of which were almost programming languages. Writing macros for the 360 Assembler was almost a language of its own. SQL scripting for SQL Server I guess is also a form of programming. But still VB is my favorite. 
:bag:

Offline Tom

  • Mega Heavy Poster
  • *******
  • Posts: 6280
  • Country: de
    • View Profile
    • Cinematic Collection Viewer
Re: My Software
« Reply #12 on: September 16, 2014, 10:55:45 PM »
I started out getting my feet wet in programming with Basic on the C64. Learned some basics in school in Turbo Pascal and C. At university I was introduced to C++,VB6 and Perl. Did some VBA programming in Excel. I worked with VB.NET. Nowadays I am working with C#, Python and VBS (used in a automated GUI test environment) 



MEJHarrison

  • Guest
Re: My Software
« Reply #13 on: September 17, 2014, 07:03:02 PM »
I actually started in 8th grade.  Found a book on BASIC in the school library and it just fascinated me.  I read that book cover to cover multiple times.  But it wasn't until the 9th grade that I actually got my hands on an actual computer, a Commodore Pet as I recall.  From there, like Tom, I learned a lot more on my C64.  In high school, we used TRS-80's and programmed in BASIC as I recall.  And in college, I learned all kinds of things.  Pascal, C, ADA, Modula-2, Prolog, LISP, Fortran, assembly (on some model of Vax) and several others not coming to mind.  We even did micro-programming.  That's the CPU language that you write assembly with.  You're not writing in assembler, but rather writing the assembler instructions for the CPU.  I seriously considered that as a career path.  Especially since Intel is only 15 minutes away from where I live.  But the additional schooling was something I wasn't interested in at the time.

These days we're a Microsoft shop.  All .NET and such.  But our main website for our providers is actually Java based and runs (ha!) on WebSphere.  Biggest piece of crap I've seen in years.  For the past 2-3 months, our servers keeping dieing in the middle of the night or early morning for no particular reason.  Even the vendor is mystified.  And it's happening at two other clients

Mustrum_Ridcully

  • Guest
Re: My Software
« Reply #14 on: September 17, 2014, 11:21:12 PM »
For the past 2-3 months, our servers keeping dieing in the middle of the night or early morning for no particular reason.
Check for:
Massive CPU-load (if log-files still exist).
If servers die in "the middle of the night or early morning" my first suspect would be the backup-software (Some systems react really bitchy when backup-software tries to access system-relevant processes without having created a shadow-copy first).
If scheduled malware-scans are performed, check in how far the shutdown corresponds with the schedule (Malware-scans inducing a shutdown usually indicate a security-breach).
« Last Edit: September 17, 2014, 11:28:46 PM by Silence_of_Lambs »