• Lucid Dreaming - Dream Views




    Results 1 to 12 of 12

    Thread: Programming

    1. #1
      Member laconix's Avatar
      Join Date
      Feb 2007
      Posts
      87
      Likes
      0
      I don't know why but i felt inclined to post this.

      The first programming language i learnt was Visual Basic 6.0, many people have told me this was a very bad move but i didn't know that it was being taught at school so i learnt it, this was in year 9 and the course went for the first semester only.

      Throughout Year 9 and 10 I learnt alot of Visual Basic 6.0, ActionScript 2.0 (just touched the surfaced) and the very basics of C/C++ and Python, i was also introduced to my TI 83+ which introduced me to TI-Basic which i learnt by just fiddling around with my calculator instead of working.
      Python I have since forgot as i found it useless, but it lead me to C/C++ which i gave up on because Visual Basic was simpler and back then it seemed futile to spend so long writing the program only to have it do jack all, and have no gooey.

      Now i see the what people meant when they said Visual Basic 6 was a bad starting language, as unless you try a language simpler you keep falling back on the simplicity and ease of creation Visual Basic 6.0 allows. I think that the next logical step for me is to migrate Visual Studio 2005 (.net programming) and focus on VB .net for awhile then possibly C# or C++ .net.

      So to those of you wanting to start out on a good foot in the programming world, don't start with Visual Basic 6.0.


      Anyway, i can now (with a good conscience) post a couple of programs i made and see what you think of them. Source should be included, if it's not then hit me up and I'll re-upload it with the source.

      And you never know, maybe you'll post something you've made!

      Airwave Chaos
      Okay first up is one of my first useful* programs.
      It basically plays that really annoying 18000hz noise after the time (in seconds, which you define) runs out.
      *Useful is used very badly here, not only is it not useful it is also very annoying
      TIP: Change annoy.wav for any other WAV file named annoy.wav to play that instead
      Screenshot:

      Download: airwave chaos.rar


      Generic Port Scanner
      This is a relatively old one i made, really simple.
      Basically it scans all ports on a given computers IP Address.
      Telling you whether they are open, but not if they aren't.
      Screenshot:

      Download: gps.rar



      Generic Packet Sniffer
      I was going to post more, but hey this post is long enough as is, so my last one is my packet sniffer that is semi-functional.
      It basically sniffs any packets going to and from your computer. I put a fair amount of effort into this one, and will post the source once i clean it up (comments aswell) and if there is any interest in the source.
      I haven't been able to test this one as of late, so i can't really update anything. I'm on my laptop that uses wireless instead of a wired connection, and the library i used doesn't support wireless.. At the moment..
      Screenshot:

      Download: gps-v0.27a.rar

      Thanks for checking this thread out, hope you liked some of the programs and maybe you'll post some of your own!
      If there's any interest here, i may post some of the other things I've made..

    2. #2
      Member Achievements:
      1 year registered Veteran First Class 5000 Hall Points

      Join Date
      Sep 2004
      Gender
      Location
      Seattle, WA
      Posts
      2,503
      Likes
      217
      Hehe way to go. Reminds me of myself in high school . I actually started the same way you did, with VB5 (I think... or was it 6? don't know actually, might have been).

      I'd actually like to disagree with the sentiment that it's a bad starting language, mainly because it's SO different from the hardcore world of C/C++ and Java and friends. It's just a different tool, for different things. To be honest, if I were to design some windows app today, I'd probably use VB for the front end, and write the back-end lower-level stuff in C++ and link them in from my front end.

      The one thing you shouldn't do is assume that the simplicity of VB is the greatest thing in the world for ALL programming needs.

    3. #3
      Member laconix's Avatar
      Join Date
      Feb 2007
      Posts
      87
      Likes
      0
      What only me and Replicon program?
      /me isn't bumping his thread

    4. #4
      FBI agent Ynot's Avatar
      Join Date
      Oct 2005
      Gender
      Location
      Southend, Essex
      Posts
      4,337
      Likes
      14
      I started out with Basic on an Atari 2600
      now, primarily use C/C++ and PHP

      currently writing a business software suite to automate common business processes
      Under the umbrella name of Swat - System Wide Administration Tool
      it includes various modules

      Arcades (pronounced Ar-Kay-Dees)
      Access Rights, Client Authentication, Data Encryption, Security
      Deals with anything to do with security

      Cobra
      Client Operations and Browser Articulation
      Deals with input / output from web browsers, CGI operations, XML parsing / generation, etc., etc.

      Diesel - (corruption of DSAL)
      Database Schema Abstraction Layer
      The heart of Swat, the rest of the modules are just icing
      Abstraction of database table schemas
      Idea is that a client program shouldn't have to know a server's database schema before-hand in order to query data from it
      Diesel sits in between the server's database and the client program, interprets standardised client requests and translates the requests into valid calls for that database schema
      returned query results from database then parsed back through Diesel and get converted to a standardised output format
      Client program never knows (or needs to know) the table structure of the underlying database

      Frodo
      Format Rendering & Document Output
      Deals with formating and outputing paper documents to printer / PDF / HTML / etc.
      (\_ _/)
      (='.'=)
      (")_(")

    5. #5
      Wanderer Merlock's Avatar
      Join Date
      Sep 2005
      Gender
      Location
      On a journey
      Posts
      2,039
      Likes
      4
      I can just imagine Frodo sorting paperwork...

    6. #6
      Member Kaniaz's Avatar
      Join Date
      Jan 2004
      Gender
      Location
      England
      Posts
      5,441
      Likes
      9
      A topic I can actually take an interest in, wowsers!

      Right now I'm working on what I called 'Bituary'. It doesn't exactly have a set purpose, other than for me to learn the ins and outs of typical "game programming" type things. I'm working with Visual C++ 2005 Express and the Win32 API. It was my first chance to get to grips with what applying C++ to a real situation was like and I've enjoyed it thoroughly. By no means am I an expert, but I've discovered plenty. Firstly, the Win32 API is bloody easy and has a disturbingly high amount of deprecated things in it. Secondly, MSDN sucks in a lot of ways. Still, there's only so many Hello World programs you can make before you want to try and make something that's more exciting, so that's what Bituary is.

      It's slow progress, the code is probably not as good as it could be and I consider it my main serious pursuit when I'm not tied up with schoolwork or whatever. There's a lot of time and learning invested into it so I've done the wise thing and put it on a subversion repository (if you don't know what that is, you're not a developer to me) so that I don't end up screwing things up and being unable to revert whatever mess I've made. Subversion is great. Seriously, CVS is a piece of shit in comparison.

      Anyway, all sorts of things have become much more accessible to me now after working on Bituary. One of the first things I wanted to do was work with DirectX and make something 3D - who doesn't - so that was one of the first aims of the project. DirectX isn't half as hard as you might imagine, and while I haven't made anything pretty and I don't have any model loading capabilities, I drummed up a very basic graphics engine that's able to manage some basic DirectX stuff:

      <div align="center"></div>

      The &#39;engine&#39; I&#39;ve coded is quite capable, with just a few lines of code (see below) of loading up any number of amazing spinning triangles. Yeah, OK, it&#39;s not going to win any programming awards but the experience I gleaned from it was invaluable:

      Code:
      ****for &#40; int i = 0; i &#33;= 50; i++ &#41; {
      ********Triangle* mcTriangle = new Triangle &#40; 0.05f * i, 0.05f * i, 0.05f * i, i * 0.01f &#41;;
      ********world-&#62;add &#40; mcTriangle &#41;;
      ****}
      <div align="center"></div>

      The world engine is capable of taking in any kind of Object base class, so it could do spinning cubes or spinning puppy models for all I really care, but I haven&#39;t done that yet. I had a lot of other things I wanted to do first, and I considered that just about done for the meantime. In the future I do want something more exciting than a couple of DirectX primitives.

      The second thing I wanted to do was add a free camera. This is actually harder than you might realise - implementing a 360 degree, any way you like camera is NOT the easiest thing ever. I learned a lot about matrices, vectors and the transformations that DirectX goes through so I was able to make a nice robust camera class. Rewarding experience for me, because it gave the game some degree of interactivity and I&#39;m able to take any scene at any angle I like:

      <div align="center"></div>

      Ironically after all the trouble I went to implementing the camera, which, bearing in mind it&#39;s completely free, lets you back-flip, roll and whatever a few people I tried it with found it confusing. So I added some constraints so it acts more like a normal camera, in that you can only tilt 45 degrees up/down. The combination of vectors and the mathematics involved was super interesting for me though. Took some time to get down, but it was worth it.

      Next I wanted to get the game network enabled and acting more like a multi-player &#39;game&#39;. So I actually ended up with Bituary being both a server and client program. This entailed getting to grips with Winsock and a lot of TCP/IP machinations. I really enjoyed this (is there anything computing related I don&#39;t enjoy, really?) and it was pretty clever how the protocols and Winsock worked together. TCP/IP is a stream protocol so I got to implement my own packet structure on top of that and soon enough I had a server and client that talked to each other. At this point I could make the program truly multi player and represent each player as a triangle, which I tried, but because I wanted to keep the architecture intact I reverted that soon enough after having a little fun.

      A lot of the code was devoted to user management. The server should, in theory, be capable of dealing with any number of players but I&#39;m sure it&#39;d get quite laggy at around 40 or something. The client sends some information and &#39;ping packets&#39; to say it&#39;s still being used. I suppose I could remotely deny people from running Bituary clients as a result, but that would be easily hackable around. Still, it&#39;s quite cool and I can see when people use the program and what OS they&#39;re on etc. I guess coding a trojan wouldn&#39;t be too hard with this knowledge by this point:

      <div align="center">
      (That stuff in the back is just IRC).</div>

      So anyway, that&#39;s just about as far as Bituary is at this point. It doesn&#39;t do much, like I said at the start, but there&#39;s a lot of plumbing and potential behind it that&#39;s helped me learn a lot more. I definitely would do it again. I&#39;ve been bugfixing and twiddling things around a bit, and I&#39;m hoping to add a DirectX GUI into it now (that I&#39;m going to have to code, hooray). That&#39;ll hopefully give Bituary some real interactivity for the player and then I&#39;m going to start thinking about making it possible to connect to more than just the hardcoded server, perhaps actually make a game out of it. I don&#39;t really know where I&#39;m going with it, but since it&#39;s all safe and cosy in subversion I&#39;m happy to go wild and see where the wind takes me with things.

      The good thing is that if I get bored of Bituary, I&#39;ve earned a goldmine of knowledge in DirectX, Windows API, MSI creation, Winsock and C++ intricacies and I can take some of the little engines and classes out of it to use them elsewhere.

      So that&#39;s my current project. Barely scratched the surface, really. I&#39;ll tell you how it progresses. Did I bore you?

      Test releases with .msis I have given to some people, if you were expecting download links, but because of some dependencies and things it only currently works on Vista. I&#39;m going to get it working on XP at some point (I mean, come on, as lovely as Vista is XP is still a key player and there&#39;s no reason why it should be dependent on Vista, I think I&#39;m just linking it against a dumb DLL). It&#39;s also a bit of a garage project that I haven&#39;t spent any time on polishing. So I&#39;d feel a little wrong allowing people to download a copy. That and I&#39;m sure you&#39;d find embarassing bugs or problems, ha-ha.

    7. #7
      Member lupo7's Avatar
      Join Date
      Feb 2007
      Gender
      Posts
      57
      Likes
      1
      Quote Originally Posted by laconix View Post
      Python I have since forgot as i found it useless, ...[/b]
      Python useless?&#33;

      Python is a great powerful language and ideal to start with.
      Fantastic syntax, and great community for support.

      I also like ruby lately -many commons with python and perl. Abstract, very human like syntax if you get familiar with.

      I m a java guy in general, and I dislike microsoft platforms -I use windows thought. So .net is out of question

      @laconix good programs anyway.
      @kaniaz wow impressive work man.

    8. #8
      Member Jeremysr's Avatar
      Join Date
      Jan 2007
      Gender
      Posts
      377
      Likes
      0
      Well I began with QBASIC (Microsoft&#39;s version of BASIC) when I was about 11. I used it for all programs I made for 3 years. And in the summertime I made, on average, 1 program every night on my hard drive-less computer that I had in my room (I was addicted to programming&#33 But I did learn a lot from it I think (even though it teaches very bad programming habits that I think I still kind of have), and because of my age I might&#39;ve not understood languages like C (actually I think I tried it and it didn&#39;t make any sense to me.) Fortunately I knew not to use GOTO and things like that.

      Then I learned PHP and it is still my favourite language. A lot like C except without the annoying stuff like pointers and data types&#33;

      A year ago I wanted to make portable games for my Nintendo DS. I only had the equipment to play GameBoy homebrew so I had to learn assembly. I never learned it well enough to make something. But I think it really helped me with other programming languages (especially all the memory stuff you have to do in C.)

      So now my languages are PHP for web programming, and C and Lua for making Nintendo DS homebrew games/programs. Except for QBASIC, I never really made anything for Windows/linux.

      My DS homebrew is here - http://www.bio-gaming.com/jeremy/homebrew.html

    9. #9
      Member laconix's Avatar
      Join Date
      Feb 2007
      Posts
      87
      Likes
      0
      Yay, replies&#33;

      @Kaniaz; Whoa, man that&#39;s impressive. How long you been working on that? How/Where did you learn the stuff? Books/WWW?
      Do you ever plan on adding physics (= really really hard if you want good physics)?

      @lupo7; Python just wasn&#39;t my cup of tea.

      @Jeremysr; Is qBasic anything like TI-Basic, syntax-wise.
      Assembly sounds hard, I&#39;ve seen the source to some assembly programs and I&#39;m like.. WTF?

    10. #10
      Member
      Join Date
      Feb 2007
      Posts
      167
      Likes
      1
      I started with HyperCard in elementary school. Great scripting language, easy to learn, and I was lucky enough to get it while it was free. The syntax is actually grammatically correct&#33; Next I moved on to VB6 (middle school) and began making mazes like crazy. I never did anything with networking, but I made a puzzle editor and made some quite interesting puzzles. Then C++... again, I stuck with the simple stuff and made my own complexity. Late in high school I moved on to Java. I&#39;ve been through a lot of languages.
      Ten years without a dream, now starting almost from scratch.

      We&#39;re messing with our bodies on a very low level here - can we break them? What will it take to hurt ourselves?

      A little nonsense now and then is relished by the wisest men.
      -Roald Dahl

    11. #11
      Member Identity X's Avatar
      Join Date
      Mar 2004
      Gender
      Posts
      1,529
      Likes
      7
      I too started with QBASIC, and the BBC Micro dialect of BASIC, being both easily accessable from home and school respectively. I mainly made silly little games. Nothing to rival Gorillas, but what could? A (ridiculously easy) stock market game and a text adventure, some ASCII games with the handy LOCATE(x,y) command.

      Visual Basic 6 came later, in which I made IdXLog, a dream journal program, which some of you may remember. I also made a preetty spiffy random song generator, tailored to be as humorous as possible of course. Python interested me at this time, and I still use it from time to time for its elegance and terseness. I mucked around with C++ for a time; made a Countdown like game on it (lots of couts) but nothing serious.

      I use Java because my University requires it of me. I.... wouldn&#39;t recommend it. Of late, I&#39;ve fooled around with C#, seems really (really) nice.

      I also know a little PHP, in which I have a appliication on my (private) web server, and shedloads of SQL.

    12. #12
      Member Stalker's Avatar
      Join Date
      Nov 2003
      Location
      Lund
      Posts
      407
      Likes
      1
      Quote Originally Posted by lupo7 View Post
      Python useless?&#33;

      Python is a great powerful language and ideal to start with.
      Fantastic syntax, and great community for support.

      I also like ruby lately -many commons with python and perl. Abstract, very human like syntax if you get familiar with.

      I m a java guy in general, and I dislike microsoft platforms -I use windows thought. So .net is out of question

      @laconix good programs anyway.
      @kaniaz wow impressive work man.[/b]
      It&#39;s way too easy to write completely incomprehensible code in python. (Needed to understand an application written like that in it once, was a pain.) And I stay away from any language where the white-space actually change the way the code is interpreted. (Including whitespace.)

      Anyway. Started with VBA. Now mostly doing C++ with a fair bit of Java, and then some C and x86 asm when needed. Tried and used a lot of other ones as well over the years.
      "Trust is a weakness"
      I have a kitty. It's serial number is: 13816
      Oxeye Games

    Bookmarks

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •