UNIX Socket FAQ

A forum for questions and answers about network programming on Linux and all other Unix-like systems

You are not logged in.

#1 2007-09-20 02:17 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Hi,

silly post again (but i'm in the lounge ;-)).

I'm programming shit at work so i'm a bit frustrated. I'd like to program in C and to do some system (kernel) programming (in one of my few moments of motivation during my free time). Rob or i3839 have you got any idea of what to program?

I'm really interested in netbsd developping as it has a clean source code i think it can be really interesting. But Linux and OpenBSD or even freeBSD (i found a good documentation on their website) would be cool too.

Well any idea is welcome. My level in system and kernel programming is poor. I've already coded a few stupids LKMs for Linux-2.6 and 2.4. I've already developped a simple shell under netBSD once and that's all i think...

PS: I already know kerneljanitor.

PPS: thx in advance ;-)


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#2 2007-09-20 02:52 PM

i3839
Oddministrator
From: Amsterdam
Registered: 2003-06-07
Posts: 2,231

Re: what to program?

You could port something from Linux or *BSd to the rest. "Something" being a driver or unique feature.

Offline

#3 2007-09-20 03:00 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Well thx i3839 but i need a concrete example, that's what i'm missing, i have no idea...

A few time ago i wanted to develop LKMs and stuff like this but i didn't understand well how to use userspace function in kernelspace and that was pissing me off (does this mean something? hehe).

After that i wanted to develop some layer 2 raw sockets, maybe that's what i should do...But i'd really like to make some kernel programming. Maybe implementing a driver? any idea of wich hardware to choose?

Have any of you already read or programmed NetBSD code? Is it simpler or more "organized" that Linux programming?


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#4 2007-09-20 04:35 PM

i3839
Oddministrator
From: Amsterdam
Registered: 2003-06-07
Posts: 2,231

Re: what to program?

If you're going to work on a driver (either implementing a new one or improving an existing one), of course you should choose one of hardware you actually have.

Never used a BSD, nor looked much at their code. To be honest, if I would go writing BSD-like licensed code I'd rather spend my time on improving Xorg (e.g. working on the ATI driver, now the specs are being released).

Offline

#5 2007-09-20 04:46 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Well if i'm talking about BSD it's not really because of the license (that i don't like that much) but more for the "beauty" of the code.

But i guess i should do like i always did: starting with something already existing just to practice and then move on.

But i'm disappointed nobody here have already made some BSD kernel coding.

Thx for the idea, i think it's way too complicated for me at the moment but who knows...

Oh i3839 i was wondering: what's your job exactly? if you're a programmer then what kind of things do you develop?

Same question to Rob (i know your job but i don't know exactly what kind of stuff you program).


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#6 2007-09-20 05:08 PM

i3839
Oddministrator
From: Amsterdam
Registered: 2003-06-07
Posts: 2,231

Re: what to program?

I'm a student computer science. Dropped out of mechanical engineering, switched to software (discovered Linux and programming), couldn't find a job, and then decided to do CS. Learned all kinds of things, except programming. I was a bit late into the whole computer thing, had my first computer in 2000 or so.

Offline

#7 2007-09-20 05:13 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Ok thank you for answering :-)


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#8 2007-09-20 08:36 PM

RobSeace
Administrator
From: Boston, MA
Registered: 2002-06-12
Posts: 3,829
Website

Re: what to program?

I don't do much of any kernel coding...  I once did a trivial little kernel module ages
ago, but that's about it...  I often browse through the Linux kernel code, however,
just to figure out how something is really working underneath...  But, I rarely ever
have any need/desire to actually do any kernel coding myself...  User-space keeps
me more than busy enough... ;-)  Though, the user-space stuff I most often work on
might be considered "system programming" by some...  I tend to mostly work on
background daemons, or low-level tools and libraries intended to be used by other
developers (or cover apps/scripts) rather than directly by end-users...  That's not
ALWAYS true; I often have to do end-user app work, as well...  But, if at all possible,
I like to leave that sort of crap (deciding how the UI should work, etc.) to someone
else who actually gives a shit, because I really don't, and what *I* think makes for
a nice, easy-to-use interface is often at odds with what normal users think... ;-)
So, my favorite thing to do is design a generic tool that's basically completely configurable
in its interface and behavior, and let someone ELSE worry about setting that up in
a way that's desirable and pretty, while I just make sure the underlying tool takes
care of the important work correctly...

Oh, and as for BSD, I don't know a whole lot about any of them, either...  Currently,
the only two Unices I know intimately are Linux and QNX (2.x and 4.x only)...  At one
point in time, I knew Ultrix very well, but most of that knowledge has been lost to
the mists of time (and heavy drinking ;-))...

Offline

#9 2007-09-21 09:22 AM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

HI, Rob,

you're lucky you seem to be doing exactly what i'd like to do...i think i have the same tastes as you when it comes to programming. But i haven't found a work like yours unfortunately, when i program, it's in php perl... but never in C. And it's often for end-users.

Ok so no kernel coder here :'( well nevermind, thx for answering guys (sorry i3839 but i consider you as a guy...)


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#10 2007-09-21 01:40 PM

RobSeace
Administrator
From: Boston, MA
Registered: 2002-06-12
Posts: 3,829
Website

Re: what to program?

you're lucky you seem to be doing exactly what i'd like to do...

Yes, I think I'm pretty lucky to end up where I am, as well...  I'm not super-rich and
working at some mega-company, or working on anything of world-changing
importance which will make me famous; I'm just quietly working on stuff I enjoy
doing, and getting paid enough to live comfortably enough on, which suits me fine...

i think i have the same tastes as you when it comes to programming.

Yeah, I think that's really true of MOST real programmers...  Fiddling with UI details
is not fun or interesting in any way for most programmers; it's just drudge work...  We
want to be working on solving some interesting new technical problem, or designing
and implementing a more elegant solution to a well-known problem...  And, just by
the nature of being programmers, I don't think our brains are wired to understand
what 'normal' users want in an interface, anyway...  That's something more suited
to artsy types or something...  We can design UIs that WE all like using, but not
necessarily ones non-programmers will find appealing...  (Which is why you have
the never-ending complaints about all Unix-like systems not being user-friendly,
along with the old programmer come-back, "Unix is perfectly user-friendly; it's just
very picky about who its friends are"... ;-))

Offline

#11 2007-09-21 02:02 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

LOL, totally agree with you,

I like to say that i'm an old school programmer, i like C, command line and i don't want to hear about Orient object programming and GUI or UI and all that stuff.

It sucks. I like understanding a system wich is well designed.

Plus i think there is no more beautiful interface than a well configured shell :-) my configuration is a fast and light and well configured (keys shortcuts...) fluxbox with a damned good ZSH :D that's what i love.

And the 2 things that i really LOVED programming was a shell and my covert channel project (wich can be found here).

The problem is that the way computer science is going today is not really found of guys like us. I mean it's more difficult to find a job like you have than the one i have...

But there is hope: http://kernelnewbies.org/CareerAdvice


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#12 2007-09-21 08:27 PM

RobSeace
Administrator
From: Boston, MA
Registered: 2002-06-12
Posts: 3,829
Website

Re: what to program?

The problem is that the way computer science is going today is not really found of guys like us. I mean it's more difficult to find a job like you have than the one i have...

I don't know...  I actually suspect it'd be easier to find a job at least working with a
Unix-like system these days than it was when I graduated, simply due to the current
popularity of Linux everywhere...  When I graduated, DOS and Windoze 3.x was
still king of the software world...  Luckily, I managed to find a place using a semi-sane
OS (QNX 2.x, at the time, which is sorta, kinda Unix-like; 4.x much more so) for all
development...  And, thankfully, the CS program at my college focused almost
entirely on Unix programming, barely bothering with silly DOS/Windoze crapola...
(I think there were several non-CS classes about DOS/Windoze, but the real CS
people all had to deal with Ultrix and VMS on Vax mainframes for almost everything
they did...  Aside from a few oddities here and there, like X programming on X
terminals, or programming Z-80s directly with machine language typed in by hand
on a hex keypad... ;-))  I don't know if it's still the case that they focus on Unix and
C as much as they did, though...  I hope so, for the sake of future programmers...
There's no better way to learn, IMHO...  Once you can handle Unix and C, you can
really handle anything, if you have to...  But, you won't want to handle anything else,
because Unix/C is coding nirvana... ;-)

Offline

#13 2007-09-21 10:47 PM

i3839
Oddministrator
From: Amsterdam
Registered: 2003-06-07
Posts: 2,231

Re: what to program?

Most programming was done in C on Linux boxes, though VHDL and PIC C programming was done on Windows. They didn't learn us that much programming (except the first year, starting with java), it was more a tool to apply just learned theory. Our curriculum can be found here, but it's in Dutch. I'm almost done, just need to do a couple icky things and wrap it up.

Fabulous moment: At the OS course, when the teacher was talking about the history of operating systems, some MS fanboy spoke up and asked something along the line of:

"But what about Windows?"

The answer:

"Technically speaking Windows isn't an operating system because it doesn't do memory protection."

It was about Windoes 95/98 or perhaps 3.11, I don't remember.

This study is focussing mostly on theory (maths, principles, etc.), but on the practical side it focusses more on C and unix than others, so there's hope yet.

Offline

#14 2007-09-21 11:53 PM

jfriesne
Administrator
From: California
Registered: 2005-07-06
Posts: 348
Website

Re: what to program?

i3839;22694 wrote:

"Technically speaking Windows isn't an operating system because it doesn't do memory protection."

Bah.... if I agreed with that I'd have to say AmigaOS was not an operating system either, and I'm not prepared to do that.

Suffice it to say that they were both "operating systems where program correctness was highly encouraged".  ;^)

Offline

#15 2007-09-22 07:29 PM

RobSeace
Administrator
From: Boston, MA
Registered: 2002-06-12
Posts: 3,829
Website

Re: what to program?

Suffice it to say that they were both "operating systems where program correctness was highly encouraged". ;^)

Heh.  Yeah, I wouldn't discount it solely based on that, either...  But, at least early
versions of Windoze I'd say can't be considered OS's, simply because they were
merely GUI facades draped over the top of DOS (the real OS, as cheesy and trivial
as it might have been)...  No more than any sane person would call X an OS, just
because you can run it on top of Unix to turn it into a GUI...  It's just another app
(albeit a complex one) running on the real OS...  I don't follow Microsoft garbage at
all anymore, so I don't know for sure, but I gather that's no longer the case for their
modern versions of Windoze, so presumably they at least count as OS's now...

(On a completely unrelated side-note, I just had to laugh at reading this article,
where Microsoft is going on about how proud they are of the marvelous acheivement
of simply no longer being a "laughingstock" when it comes to security...  I mean,
sure it's good they're at least heading in the right direction, I guess, but man...  It's
like they're saying, "Hey, look, we don't suck NEARLY as badly as we used to!
Aren't we the greatest??", while ignoring the fact that pretty much everyone else
on the planet has always had a better security track record than them, and still
continues to do so...  Yet, they think their minor improvements from being horribly,
laughably bad to almost adequate are worthy of great praise and worship...  Heh.)

Offline

#16 2007-09-22 07:41 PM

i3839
Oddministrator
From: Amsterdam
Registered: 2003-06-07
Posts: 2,231

Re: what to program?

The hilarious thing is that users complain when they do add security stuff because it
"breaks" things that used to work. So now they must pay the price of keeping users
ignorant and giving all crap programs free reign. That said, any security they do
add is often crappily done, so the complainers might have a point too.

I sadly enough never had the honour of meeting an Amiga.

Offline

#17 2007-09-24 10:50 PM

vic
Administrator
Registered: 2002-04-16
Posts: 85
Website

Re: what to program?

In regards to your original question, I have a project I'd love to do if I could allocate the cycles, and it would get me back to UNIX/C which I loved.

What I'd like to see is a superserver like inetd/xinetd which is for services written in php.  I figure it could load the php engine in the same way that apache or other web servers do through a shared object.  That should allow for fairly efficient services to be written in php, which would be great for prototyping, or even for some production code if done well.

One of these days I might take this project on myself but if you wanted to run with it consider the idea yours.

Yeah, I know this would open the doors to all kinds of crappy servers written in php just like there are so many crappy web apps written in php, but there's also some pretty good stuff like this bulletin board, so it could open doors to creating some really cool new apps.

Offline

#18 2007-09-28 01:01 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Ok Vic thank you for the idea i'll think about it if i can't find any kernel stuff to do.

I love the way this thread is going :-) personnally i'm fed up with windows. I can't bear people who keep saying that it's better than Unix because you can do more things...!! it's just a box full of crappy drivers (and you don't need most of them). No really working and programming under windows is really a pain. My worst memory was when i had to program in VBScrit, this language sucks!!!

Well i'm not going to extend myself on this, i'm too tired, even talking about windows is a pain for me.


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#19 2007-10-20 01:45 PM

niek
Member
Registered: 2006-12-24
Posts: 109

Re: what to program?

You could fix all the Beryl (okay, Beryl is now together with compiz) bugs..

Beryl is really nice, and it would be a shame if it wouldn't get out of beta phase :)

Offline

#20 2007-10-22 10:21 AM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Well it's a good idea but it's not the kind of programmation that i like. plus i hate beryl :-) i'm a fluxbox user and i'll never change :D


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

#21 2007-10-24 05:12 PM

vic
Administrator
Registered: 2002-04-16
Posts: 85
Website

Re: what to program?

I did some preliminary work on the php super server but found that imitating the apache symbols needed to load an apache DSO was going to be a royal PITA.  Then I found PHPEmbed from facebook:

http://developers.facebook.com/phpembed/

I haven't tried it yet but they say it makes using php from c++ easy.  Nobody outside of facebook seems to be able to figure it out, but I'm guessing that's because those trying are more php people than c++ people.  I'm going to give it a go when I have some time.  If I can get the php integration sorted out then the super server should be a walk in the park.

I hope you don't mind me hijacking your thread biologz...  Just chit chat.

Offline

#22 2007-10-24 05:19 PM

biologz
Administrator
From: Puking on the pavement
Registered: 2005-11-02
Posts: 396

Re: what to program?

Hey no problem Vic (i wouldn't want you to ban me ;-)

I won't definitely program for my own pleasure before a long long time. I have enough sh*t to program at work i'm fed up with that :D


gethostbyintuition() is still a dream of mine

                                                 -- quoted from bash

Offline

Board footer

Powered by FluxBB