What are your (current) hobby projects? What languages or libraries are you using? How usable or complete is it? What makes what you're doing novel or great?
No need to be smug or anything, or get all angry at other people for using <thing you hate>. Just share what you're up to. Add a URL if it's public too, if you want.
I'll start. I'm writing a stack-based language in Racket for use in embedded devices. It's already got Hindley-Milner style type inference, it just needs to actually produce output.
I'm also planning a modal text editor that feels like vim and a music-making program somehow.
But enough about me. Let's get some actual content on the front page of /code/.
A raspberry pi motion camera that uploads photos to somewhere on the web.
I also want it to blink an LED every time a photo is taken but I don't know how to trigger that.
Voroni diagram generator with guile and c
A unix shell in C, not derived from sh or csh or something, with compiled execution and other features for enhanced interactive and programming use.
I'm working on my own LFS system. http://linuxfromscratch.org/
Writing a textboard engine in C. Fun times
I'm trying to improve game-bots to lower ban-rates.
`.__ ,-' ,-.`-,
`''-------' ( p ) `._ HAVE YOU HAXED
`-' ( MY ANUS TODAY ?
what are you doing here? they deleted the shelter thread
Somebody else use it?
I really hate the language itself. It's probably the only language where it is easier to read scripts than to write them!
Applescript uses a natural language metaphor, which is a fancy way of saying that all the syntax is made up of arbitrary keywords, some of them actually being documented.
Here's an example of code lifted from the wp page about AS:
set pix to 72
set answer to text returned of (display dialog "Enter in the number of inches" default answer "1")
display dialog answer & "in = " & (answer * pix) & "px"
It is too hard for the non-programmer, because I really can't see how this way of using natural language could make coding easier, and it is also hard for normal coders, who are always trying to find out which magic keyword is used to abstract what they'd like to work with. It just is easier to read.
> I've used Automator for a few things; that's a bit more logical to work with, but much less powerful, unfortunately.
It really, really needs conditional logic.
So it looks like it might just be a drop-in replacement for AppleScript that still provides the same functionality. I'll give it a more thorough look-over after work; this might be really cool.
Automator is good for putting in a "Run Shell Script" action, and letting you do Perl scripting from inside the Finder, but not much else.
I use applescript all the time. It's great for use with Obj. C applications (for talking to other apps.) Also good, as the above poster said, for running shell scripts etc.
Would somebody know first-hand whether you can use PyObjC or RubyCocoa for small mac scripting, or is it only worth it for small apps?
several ways to do the same thing, quirky non-uniform syntax, not small and consistent, imo it doesn't achieve true complete practicality in anything. scales very badly to very large projects. it's odd, but nonethless mediocre too. if you are interested in scripting languages, even if they are not perfect either, go for python and especially ruby; good balance between elegance/minimality and practicality. otherwise (if you like compiled would-be strong-type-checked languages ) go for java or .net if you don't need strict control in what happens with memory or precise performance features; otherwise, the "too-complex-but-very-effective" c++. good luck and tell us what you discover and think ;-)
This kind of smells like what we used to have on the Amiga, starting from operating system version 2.04 onward. ARexx. The glue language that actually put applications together in a very reasonable way. Not quite Rexx as the poops at IBM imagined it.
Wonder why no one's come up with a working analogue to it yet.
AppleScript is a working analogue to it. It's just that the syntax is horrible.
I want to be a professional programmer because I'm under the impression programmers don't have to speak that much. The only programming language I know is Java because I took a few classes. I liked learning Java, and it came easy to me, but even though I want programming to be my job, I don't want to learn any more-- I prefer drawing manga pictures (which I'm bad at). What should I do?
remove your ribs and try to get your own penis into your mouth :)
speaking is fun nigga
Know absolutely nothing about programming but want to learn etcetera...
Used computers all my life but know nothing about the codes inside them. I keep coming up with ideas for computer programs which are based on a few simple tasks or calculations which I think a computer could do but I have no idea how to implement them. I think I should get to the level of making a simple card game or something. Then work my way up to making scripts, something that could open up opera browser, search through a site for certain links, open them up and search for pieces of text and put them into a spreadsheet. That would be useful for my stock market research.
For now though I am a complete pleb and don't even know what software I need or how to take the first step. Here are some links I found that I will look at.
actually this will be my tripcode
>Maybe it could teach me to use "precision magnets to manipulate the individual bits in your RAM and write programs in raw machine code."
umm I don't think that was completely srs
I'd recommend "How to Design Programs", and if you'd like and have the time, you can supplement with "Structure and Interpretation of Computer Programs" lectures.
>Also I have heard from many sources that programming is more about constructing programs and less about memorizing code, this raises my confidence a little, assuming I am imagining what coding is like correctly.
The focus of How to Design Programs is on program design and construction, and the language it uses is very simple and requires no significant syntax memorization. It's also free and there's an IDE developed for it and the language it's based off of (Racket Lisp).
SICP is a highly-recommended book, but it's also very abstract and can be difficult, but it can be nice to watch the lectures and take notes and see how the ideas are used in HtDP. This is what I've been doing myself, I just started myself a few weeks ago.
I kind of wish there was some kind of beginner's programming IRC room or something for people like us.
learn to program by programming, duh
sicp is overrated abstract bullshite
this is a point that no one may contest
What makes you think that recursion vs. iteration and their benefits and disadvantages, the differences between the environmental and object-oriented models of programming, functional programming, and data-directed programming, and knowing how compilers work by writing your own are "abstract bullshite"?
At the risk of being too obvious, it DOES deal a lot with the structure of programming, and that's why I recommended it as a supplement to a more pragmatic or less abstract book if you have the time. You can always just read it afterwards.
going to try codecademy, also found this theory about ADHD predominately inattentive which might yield something useful
found this, it is very compelling evidence that I can increase glycogen (important source of energy) levels in the brain through exercise
I believe I need to sprint and do some other intensive exercises that use every muscle group in order to "hit the wall", the point where energy reserves are depleted and the body starts to deplete energy from other reserves like the brain. In theory this will trigger the body's natural reaction to increase energy reserves in the brain as well as skeletal muscle and mitigate the effects of ADHD-PI somewhat.
We’ve all used UNIX or one of its derivatives. A lot of us use it for development and server applications. Quite a few of us love it. And I’m sure we’ve all got things we hate about it too. Is it time for a new Unix-Hater’s Handbook?
I have a few bones to pick:
a) Inconsistent command-line options:
Most programs use -- in front of their options. For example, mc --version. Some don’t, like dd, find, and other utilities from the Stone Age.
(backward compatibility, blah, blah, blah, it’s been several decades, blah, blah, blah)
b) Directory structure:
Yes, we’ve all heard the reasons why there’s a /bin, /usr/bin, /usr/local/bin, and /usr/local/*/bin, or why there are multiple library locations, or why there’s a /usr and /usr/local, etc. So what?
ugh make a new thread if you want to continue >>1's topic
I was thinking of some file types that afaik don't exist.
One is filesystem entries of files stored in memory from disk files, updated when the disk file modification time changes. This would be a big disk-access optimization in some cases.
The in-memory entry permissions would be ignored, and writing to it would write to the disk file.
Another one is dynamic files that (only) have the name of a executable, which when opened would be executed by the kernel, creating a process child of init with its standard output piped to the file descriptor obtained by opening the dynamic file.
Here reading would depend on both the dynamic file's read permission and the named executable's execute permission. The idea is that it's transparent to the reading process.
Whether they could change the file to which they point to without deleting it would depend on the implementation, I think. (https://en.wikipedia.org/wiki/Symbolic_link#Variable_symbolic_links)
Unix is programmable, you can change it not to suck.
Everything else sucks more, and you're stuck.
Yeah, you can spend your tine and effort on trying to graft usability onto a crusty design built to run mainframes in the 70s, like the Linux fags have been trying and failing at for the past two decades, or you could try to make an OS that actually makes sense for desktop use instead.
I was gonna make an OS that like totally made sense super intuitive wouldve changed the desktop forever but I got stuck at implementing jishin/kashin.
It isn't very fast, but it's still very impressive.
What's your favorite IDE/text editor when it comes to programming? Also, what's the setup in the banner up top? http://static.4-ch.net/images/boardtitles/programming.gif, that is.
Sublime Text, vi on servers, Visual Studio is fine too.
Depends what I'm working on. If i'm working on some bloated e-commerce mess for a .net client, visual studio is opan obvious choice,
Everything else, ST or if unavailable vi
BSD vi, ed, mg on Unix. Sam and acme on Plan 9. Pe on Haiku.
I like vim with solarized dark colorscheme and the linter syntastic. All is very comfortable that way.
Well, I started with "vi" on my very first shell account (a SunOS 4.x box, back in 1995). No idea what exact version of vi it was, but I didn't have any colors or visual mode, or anything like that. Soon after that, I installed Slackware and started using "vi" there as well. And since I completely stayed away from Windows all these years (except when required for a job), I just kept using vi or vim.
Somewhere along the way I got the crazy idea to swap the Escape and CapsLock keys, using either xmodmap or its console equivalent (e.g. wsconsctl in OpenBSD). That made things a lot more comfortable...
Speaking of OpenBSD, their /usr/bin/vi program is a slightly enhanced version of nvi, because it allows you to split the screen and have several text windows displayed at once. I didn't even realize this until one of the developers mentioned it on openbsd.misc:
our vi has multiple windows.
then ^W to move from file to file.
there's no such thing as
vi that doesn't have visual mode. perhaps you're thinking of
Sorry I meant no visual block operations (select, copy, paste) like vim has. Yeah, the SunOS vi was running in regular full screen mode.
Now the "mail" or "mailx" programs, those dropped you into ed or maybe ex by default, for some reason. I mostly used Pine those days, and only occasionally mail in command line mode, e.g.:
mail -s "hi there" recipient@host < msg.txt
Later on when I started doing sysadmin work, I found myself just telnet'ing to SMTP and POP3 ports a lot (for testing purposes). Those interfaces are actually pretty simple; there's just no nice command-line editing/history or saving of messages to "sent-mail" folder or whatever (unless you're logging the session via typescript or whatever).
Emacs is love; Emacs is life.
Tcl is one of the most underrated computer languages today.
It has a weird syntax, but on the other hand the syntax makes it more extensible than any other language besides the Lisp family.
Tk is reputed for it's antique-looking widgets. However with the latest 8.5 releast TTk, Themeable Tk is the default which means native look on Vista, XP, OSX. (Not Linux though, but what can you call native there anyway?)
So if you don't know Tcl yet, go and learn it. It's extremely simple, has an interactive shell, and will expand your mind... much more than learning most other languages!!
> Try explaining a cdr or progn to a non-programmer, both which are very prevalent in lisp.
They're just words. All the words that are in lisp, are in this book: http://l1sp.org/cl/ or you can learn about them by typing:
> What common Python idioms are likely to pose a problem for a new programmer?
It all seems problematic for a new programmer. Explaining why sometimes you use
 lists and sometimes you use
() tuples. Explaining why
__name__ also seems to cause problems. Operator-order is also difficult; explaining why they sometimes read a statement right-to-left, and other times from left-to-right seems problematic.
Someone who is familiar with some algol-like syntax such as is seen in a shell or in another language will have a completely different set of problems- the if, postfix-if, yield, self, and so on.
It seems Tk is considered less-harmful by the cat-v folks (http://harmful.cat-v.org/software)
Hmm, I did some Perl/Tk stuff back in 2004 or so, and the widgets seemed pretty damn close to Win95/NT/2000 style on those platforms. Not exactly identical to straight Win32, but close enough. Now, the X11 widgets (same exact Perl/Tk program running in Linux or BSD) had that unique "Tk" look - kind of frugal/archaic, and kind of charming at the same time, IMO (mind you, I actually *like plain, flat Athena widgets also).
Never really got into Tcl itself though, except for tweaking some ircII scripts back in the day (mostly bots). Seemed like the Tcl/Tk stuff is less buggy than the Tk stuff ported to Perl though. Also writing Tcl/Tk code seems less verbose than Perl equivalent.
I don't know why there is always so much Python comparisons everywhere. Do they have something to prove? Those guys used to invade the comp.lang.perl.misc and related newsgroups a decade ago and constantly talk trash. If that language is was great, it would stand up on its own and not need all this stupid in-your-face advocacy. Because of those incessant antics, Python will always turn me off.
Hey I totally forgot that sometimes I use Expect to automate stuff (like logging into remote shell accounts that require a password rather than SSH key). And well, it's all based on Tcl...