I've enjoyed and learned a lot from Bugs in Writing. It gets mixed reviews - it has an unorthodox style that some people like (I do) and some profoundly dislike. I have personally found it very useful in dealing particular constructions that are often confusing and problematic.
Ruby on Rails looks very nice for web application development (and they just released 1.0, with educational videos and everything), and Ruby itself looks like an interesting language by itself (I have not programmed in it).
I'm a long-time Perl hacker, and it's great for doing "fun" programming, since it lets you do things the way you want it, without imposing many rules. Lately I've been learning Python, and it's also very nice - much more structured, and with an incredibly complete standard library.
You mention you want cross-platform, but if you have a Mac, do take a look at Cocoa development. It's an incredibly nice environment in which to develop, and the tools are superb.
I have a Clie N710C, and I use it both with a Mac (MarkSpace sells the software for doing this) and Linux (kernels since around version 2.4.13 have worked OK with it, maybe even earlier). Sony does not officially support anything other than Windows, but that doesn't mean it does not work:-)
The MarkSpace product allows mounting the memory stick under MacOS, and on Linux, it can be mounted as a usb-storage device, it is formatted as a VFAT file system.
Re:Great FOR email and web browsing with Palm VII
on
PDA Keyboards Compared
·
· Score: 1
I have the Stowaway keyboard (called "Palm Portable Keyboard" or somesuch by Palm) for my Palm VII. I don't use it very much daily, but it's indispensable when traveling, because it allows me to keep up with my email and even do web browsing without having to carry a laptop. Just unfold the keyboard, plug the VII in, and read and reply to email as usual. Incredibly handy. The best thing is that you can do it almost anywhere, so it's good for escaping boring talks at conferences:-)
This paper describes three techniques to covertly pass information in IP and TCP packets, using the IP identification number and the TCP sequence number. Nothing groundbreaking. The only mildly non-obvious part is the bouncing of packets off a third host, which makes up the third technique. The paper would be reduced to two pages if it were not for all the packet traces (which, in my opinion, do not add much to the explanations) and both the ``user's guide'' and the whole code of the sample program both of which should not be included in the paper, in my opinion.
You can tell by now that I did not like this paper very much. The covert channels described are all quite obvious. The one thing I liked was that the author actually implemented his technique. I think this is interesting because there are not many covert-channel implementations out there.
I see this paper more as an example of simple covert channels, used to explain what covert channels are about, than as a research paper in the area.
Where I study (a research center at Purdue University) most of the research projects for which code is developed are made publicly available at some point. However, as most of them are considered "research prototypes" and not full production systems, they are initially released under a restrictive license (written, at least in my case, by the Purdue Research Foundation), that provides for people to give us back any modifications they make, as well as feedback about their experiences with the system.
I don't think there is any way of enforcing these terms (on people giving back changes and feedback), but at least it's there in the license. Since we do not profit from these projects (at least not initially), we are interested in the feedback mostly for academic purposes anyway, so enforcement in our case is not much of a concern.
You can read the license for the AAFID project (my main project now) here.
Out of all the word processors mentioned, none of them really pay homage to the traditional UNIX way of doing things, namely small programs that do small things really well, chained together through IO redirections and pipes.
While I live and swear by the "Unix way", I don't think a word processor is its place. A word processor is intended to be easy to use and to give you an integrated environment to do fancy stuff with your text. If you want raw power, use TeX or LaTeX. But sometimes, for typing a quick letter or a table, a word processor is the easiest way to go.
I use Emacs+LaTeX myself for mostly everything, but I see the need for good word processors.
Any pointers or links would be highly appreciated, by myself and others.
Apart from the other recommendations made (Essential Sys Admin and Practical Unix Security are must-haves), I would suggest:
Install TCP Wrappers and configure it appropriately. Block anything that you don't need, log everything else.
Read the corresponding tech tips from CERT, depending on what you need (e.g. if you want to set up an FTP server, read the "Anonymous FTP Configuration guidelines")
Read the WWW security FAQ if you are planning on running a web server.
Use Tripwire. They have a commercial version, but you can always use the free version (1.3). I think they also give the newer version for Linux for free.
Posterous works quite well for posting to a blog over email. And it can also auto-post to twitter, flickr and other places.
I've enjoyed and learned a lot from Bugs in Writing. It gets mixed reviews - it has an unorthodox style that some people like (I do) and some profoundly dislike. I have personally found it very useful in dealing particular constructions that are often confusing and problematic.
Ruby on Rails looks very nice for web application development (and they just released 1.0, with educational videos and everything), and Ruby itself looks like an interesting language by itself (I have not programmed in it).
I'm a long-time Perl hacker, and it's great for doing "fun" programming, since it lets you do things the way you want it, without imposing many rules. Lately I've been learning Python, and it's also very nice - much more structured, and with an incredibly complete standard library.
You mention you want cross-platform, but if you have a Mac, do take a look at Cocoa development. It's an incredibly nice environment in which to develop, and the tools are superb.
Try Meanwhile (http://meanwhile.sourceforge.net/). It's a Sametime Gaim plugin, and works very nicely.
I have a Clie N710C, and I use it both with a Mac (MarkSpace sells the software for doing this) and Linux (kernels since around version 2.4.13 have worked OK with it, maybe even earlier). Sony does not officially support anything other than Windows, but that doesn't mean it does not work :-)
The MarkSpace product allows mounting the memory stick under MacOS, and on Linux, it can be mounted as a usb-storage device, it is formatted as a VFAT file system.
That's what I meant, of course.
I have the Stowaway keyboard (called "Palm Portable Keyboard" or somesuch by Palm) for my Palm VII. I don't use it very much daily, but it's indispensable when traveling, because it allows me to keep up with my email and even do web browsing without having to carry a laptop. Just unfold the keyboard, plug the VII in, and read and reply to email as usual. Incredibly handy. The best thing is that you can do it almost anywhere, so it's good for escaping boring talks at conferences :-)
Programming Perl has a section called "Efficiency" in the "Other Oddments" chapter, which contains many useful pointers for time and space efficiency.
You can tell by now that I did not like this paper very much. The covert channels described are all quite obvious. The one thing I liked was that the author actually implemented his technique. I think this is interesting because there are not many covert-channel implementations out there.
I see this paper more as an example of simple covert channels, used to explain what covert channels are about, than as a research paper in the area.
--ZZamboni
I don't think there is any way of enforcing these terms (on people giving back changes and feedback), but at least it's there in the license. Since we do not profit from these projects (at least not initially), we are interested in the feedback mostly for academic purposes anyway, so enforcement in our case is not much of a concern.
You can read the license for the AAFID project (my main project now) here.
--Diego
While I live and swear by the "Unix way", I don't think a word processor is its place. A word processor is intended to be easy to use and to give you an integrated environment to do fancy stuff with your text. If you want raw power, use TeX or LaTeX. But sometimes, for typing a quick letter or a table, a word processor is the easiest way to go.
I use Emacs+LaTeX myself for mostly everything, but I see the need for good word processors.
--Diego
Apart from the other recommendations made (Essential Sys Admin and Practical Unix Security are must-haves), I would suggest:
- Install TCP Wrappers and configure it appropriately. Block anything that you don't need, log everything else.
- Read the corresponding tech tips from CERT, depending on what you need (e.g. if you want to set up an FTP server, read the "Anonymous FTP Configuration guidelines")
- Read the WWW security FAQ if you are planning on running a web server.
- Use Tripwire. They have a commercial version, but you can always use the free version (1.3). I think they also give the newer version for Linux for free.
- Read other documents at http://www.cert.org/nav/securityim provement.html and http://xforce.iss.net/library/faqs/.
- Be always alert for anything strange that happens on your system. There is no substitute for an alert and informed sysadmin.
--Diego