Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
requesting suggestions: gentoo and self-education
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
yxis
n00b
n00b


Joined: 11 May 2004
Posts: 24
Location: your gnu-spot

PostPosted: Tue May 18, 2004 7:30 pm    Post subject: requesting suggestions: gentoo and self-education Reply with quote

hi all. the question here applies specifically to me, but i want the answers to apply generally to anyone who is interested in using gentoo as a tool to further thier knowledge and technical aptitude by themselves. I am a new user (fresh-faced windows-to-gentoo convert) - and have just gone through the baptism-by-fire 2 week process of installing gentoo from stage 1 on multiple boxes. Now that i have tasted the sweet fruit gentoo, i can't stop. Yet here i am, staring at my shiny new gentoo installs and wondering what to do. No one told me gentoo would do this, you people might want to warn folks beforehand that they will undergo a slight paradigm shift if they migrate from windows to gentoo (ie. they begin to wonder what else they can do with computers now that microsoft isn't changing diapers for them)

Anyway, here is my question, but as i said, i welcome all general suggestions too, if you deem them applicable and on-topic:

I need some sort of suggestions for a next step. But did i mention i am new? Let me phrase it another way: If you had to pick a set of tasks for a person to perform, and those tasks were chosen deliberately in order to a) teach the person as much in a short period of time as possible, yet b) not drown them in small related tasks which required technical skills way beyond thier range... what would you choose?

My initial ideas range from setting up a NAT gateway to setting up a webserver, etc etc. Now, i understand many of these choices would likely be determined by the hardware availble. Let's assume that the person in question has 2 systems, an old throw-away box, and a decent modern box. The old throwaway can be abused, the new box cannot be abused too much. Lets also assume some sort of network.

What is a fun, educational set of next-steps? What could possibly rival the ecstacy of my initial experiences with gentoo? Im hooked. help me. Any and all ideas are welcome.. and thanks to the community in advance for the helpful attitudes! Personal testimony is also encouraged. Maybe if someone can tell me what they had most fun learning I will get some ideas.
Back to top
View user's profile Send private message
vonhelmet
l33t
l33t


Joined: 06 Apr 2004
Posts: 770
Location: Somewhere in a school

PostPosted: Tue May 18, 2004 7:45 pm    Post subject: Reply with quote

Do something that involves learning a new programming language. Try some scripting in Bash or something, or try Perl or Python for a bit more challenge.

The webserver thing is a good idea, and then you can play around and learn PHP and CSS and other useful stuff for making websites.

Databases are fun too. Install MySQL or PostgreSQL and do something with it. This works well with the PHP thing mentioned above.
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Tue May 18, 2004 7:48 pm    Post subject: Reply with quote

Hmmm... well personally, the first thing I did was learn how portage worked properly, check out the link in my sig for that, and the other link for a few helpful tools.

Next up - the most enjoyable thing I found was OpenMosix. I have a set of old P200MMX boxes (four of them) on which I installed a basic Gentoo system. Then I got clustering working - there's a HOWTO in the docs section of gentoo.org - and that was great fun! All of a sudden I had a reasonable computer to work with, even if it was drawing 800W of power...

There's all sorts you could do, though. Getting an SELINUX Hardened Gentoo NAT firewall / server is a fun thing to do. If you're a little bit insane, you could try using an experimental compiler (I've been using GCC 3.4.0 and now I've just made the leap to GCC 3.5 CVS HEAD) or perhaps toying around with bash scripting to automate all those mundane tasks that everyone else does by hand but you know better.

Keep us posted...
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
Back to top
View user's profile Send private message
castorilo
Apprentice
Apprentice


Joined: 25 Dec 2002
Posts: 157

PostPosted: Tue May 18, 2004 7:51 pm    Post subject: Re: requesting suggestions: gentoo and self-education Reply with quote

yxis wrote:

What is a fun, educational set of next-steps? What could possibly rival the ecstacy of my initial experiences with gentoo? Im hooked. help me. Any and all ideas are welcome.. and thanks to the community in advance for the helpful attitudes! Personal testimony is also encouraged. Maybe if someone can tell me what they had most fun learning I will get some ideas.


Installing a web server & NAT is ok, but that is very easy and you won't learn much from it.

One of the most gratifying experiences for me was learning how to program. You don't have to start with anything dificult. I would suggest python if you have programmed before. This is suitable for any person, even if you have never used computers, so don't be afraid.

Try here for a start:
http://www.programmingtutorials.com/python.aspx
Back to top
View user's profile Send private message
yxis
n00b
n00b


Joined: 11 May 2004
Posts: 24
Location: your gnu-spot

PostPosted: Tue May 18, 2004 11:37 pm    Post subject: Reply with quote

thanks for the suggestions, all. my gut is telling me Python... that can't be normal. but python it is, for now. again, thanks much.
Back to top
View user's profile Send private message
teknomage1
Veteran
Veteran


Joined: 05 Aug 2003
Posts: 1239
Location: Los Angeles, CA

PostPosted: Wed May 19, 2004 2:06 am    Post subject: Reply with quote

My steps for education went like this:
*)Build NAT router cause I wanted my roommates to help with the internet bill.
*)Build MythTV box
*)Learn Perl and Regexes because it seemed interesting
*)Build webserver and learn PHP to make dynamic site
*)upgrade webserver with mysql to build databse driven site for school paper (in progress)
*)lose windows partition and realize it's not really a loss.
Back to top
View user's profile Send private message
Unne
l33t
l33t


Joined: 21 Jul 2003
Posts: 616

PostPosted: Wed May 19, 2004 2:27 am    Post subject: Reply with quote

What do you want your computer to do? That's what computers are for after all, doing things, solving problems. What problem do you have that can be solved? Having a problem to solve is motivation, and it teaches you things that are actually useful. Programming is nice to learn too *cough*Perl*cough but programming for the sake of programming can be kind of boring. Programming is most fun when you end up with something you can actually use.

The first thing I did which was fairly difficult, but extremely rewarding and a huge time-saver in the long run, was setting up a local IMAP mail server + procmail + fetchmail, and setting it to poll all my various remote mail servers every couple minutes, fetch and sort my mail locally.

If you don't feel like doing that, then it's never a bad idea just to get associated with all the tools; there are a LOT of them, and it's almost impossible to even learn them all, so might as well get started. :) Learn vim, learn how grep works, stuff like that is extremely useful.
Back to top
View user's profile Send private message
yxis
n00b
n00b


Joined: 11 May 2004
Posts: 24
Location: your gnu-spot

PostPosted: Wed May 19, 2004 7:16 pm    Post subject: Reply with quote

thanks all, this is all helpful info. regarding a goal, or a problem i need solved - that does present a problem, as i have no concrete goal. but i do have virtual goals, i suppose. my current hardware config is expendible, non-critical. i can use it to learn things that might help when i aquire hardware that isn't. anyone know of a simple beginning task one might undertake in order to learn Python or PERL? let me know.
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Wed May 19, 2004 7:22 pm    Post subject: Reply with quote

For Python, if you fancy really jumping in at the deep end, have a look on bugs.gentoo.org for portage feature requests, and write some of them! :twisted:

Seriously though, that would be a great help if you could do that, as the portage team is always drastically short of manpower. And doing something like that is always massively gratifying...
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
Back to top
View user's profile Send private message
castorilo
Apprentice
Apprentice


Joined: 25 Dec 2002
Posts: 157

PostPosted: Thu May 20, 2004 1:41 pm    Post subject: Reply with quote

yxis wrote:
thanks all, this is all helpful info. regarding a goal, or a problem i need solved - that does present a problem, as i have no concrete goal. but i do have virtual goals, i suppose. my current hardware config is expendible, non-critical. i can use it to learn things that might help when i aquire hardware that isn't. anyone know of a simple beginning task one might undertake in order to learn Python or PERL? let me know.


Here are some problems that you can solve, in order of difficulty:

* Make a program that receives 2 numbers a and b, and print a + b

* print a - b, a *b, a/b

* make a menu to select which one of the results you want to see. It can be as simple as print a bunch of options:

1) a+b
2) a-b
3) a*b
4) a/b
5) quit

and read a number to see which option the user selects. Show the result that the user wanted and go back to the menu if he didn't select quit

* Make a program that receives a number x and gives you x!
Just in case:
1! = 1
x! = x * (x-1)!

* Make it give you fibonacci(x)
just in case:
fibonacci(0) = 0
fibonacci(1) = 1
fibonacci(x) = fibonacci(x-1) + fibonacci(x-2)

* Make it give you the primal factors of it. for example, the primal factors of 20 are:
2 * 2 * 5

* Add a menu to the above program.

* Make a program that receives a list of numbers and give you the sum

* now make it give you the mean

* now the standard deviation.

* Extend the above program, and add a text menu, where you select which value you want to see.

* Make a program that opens two files, each with a matrix, and output the sum of the matrices. That should give you another matrix that has the same size.
For example:
matrix1.txt
1 2 3
4 5 6
7 8 9

matrix2.txt
10 11 12
13 14 15
16 17 18

the output should be:
11 13 15
17 19 21
23 25 27

* Same as above, but multiply the matrices.

* Give the determinant of the matrices.

* Add a text menu to it to select the operation.

* Open a file that has a graph, for example
1 -> 2
2 -> 3
2 -> 4
3 -> 4
3 -> 5

and calculate the shortest path from the lowest number to the highest number, for example:
1 -> 2 -> 3 -> 5

If there are more than one, show them all.

* Calculate the longest path

* show if there is any loop in the graph. A loop is a path that goes from a starting point to itself.

* Extend the above program so it asks the user for the starting point and the ending point.

Feel free to mail me if you want some help paul.pacheco@wavecode.com

Also, you might want to emerge eric3, it is a very nice python IDE, makes your life easier with a great text editor, and built in debugger. A debugger lets you run your program line by line so you can find out what your program is doing wrong.

I would advice against perl for beginners. Although a very powerfull language, and very convenient for text manipulation, it is a very complex language, lot's of built in operators and variables so it is hard to keep it all in just one brain. Sorry perl guys.
Back to top
View user's profile Send private message
longodj
Tux's lil' helper
Tux's lil' helper


Joined: 29 Aug 2003
Posts: 79
Location: New Jersey

PostPosted: Thu Feb 24, 2005 5:37 am    Post subject: Reply with quote

If you learn from running through difficult problems, pyGTK is a nice start. The tutorials available on the web are great and you learn a lot very quickly.

Also, if you are willing to spend some money, O'Reilly has a MASSIVE number of books in the name of linux, python, perl, php, licensing, etc. etc. etc. I really enjoy them, and the python book is really great.

GOOD LUCK! :D
_________________
Linux dreammachine 2.6.16-rc3-nitro1 #1 PREEMPT Thu Feb 23 15:56:10 EST 2006 x86_64 AMD Athlon(tm) 64 Processor 3800+ GNU/Linux
1Gb RAM
Quadro FX 1300
2 x 36Gb Raptors
1 x 400Gb
Plextor Slot-Load 16X DVD+/-RW

(Linux Friendly FSF Donor)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum