[Noisebridge-discuss] Seeking info about Intro to C Programming class

jim jim at well.com
Sat Jun 18 16:00:48 UTC 2011


    There's a C programming class at Noisebridge in the Turing 
classroom on 
* Tuesdays from 6 to 7 PM (nominally, definitely starts at 6, 
usually goes later than 7) 
and on 
* Wednesdays from 5 to 6 (nominally, may start a little earlier, 
usually spills over 6 into the linux discussion group time). 

    This is a class, lecture format with Q and A at anytime. 
    The goal is to cover concepts such as basic compiler design 
and structure of executable programs etc. that are helpful but 
not ordinarily covered in introductory texts. 
    It is a complement to standard introductions to C. One of 
the best texts for beginners is Stephen Kochan's ANSI C 
programming. The K&R (ANSI version) is the horse's mouth, but 
may be too informationally dense for beginners. I have a list 
of web-accessible C tutorials and other info sources. 

    I think the class is starting its fourth week. We've pretty 
much finished introducing keywords (with examples). We've also 
introduced pointers and functions, but those two topics will be 
reviewed thoroughly in the next few sessions. 
    The current topic is flow control: we discussed branching 
last week and will introduce looping this coming week. 
    Then we'll spend a few sessions on expressions. Finally 
we'll explore some basic application development techniques 
such as making an app based on multiple source files, making 
custom datatypes (notably typedef struct), using preprocessor 
directives.... 
    We'll review as we go, with special emphasis on comments 
and other maintenance aspects of coding. 
    The class will probably finish late July. 

    There's a plan to follow with a study group (not a class) 
for assembly language for linux (and other unix-type kernels). 
    This will be very basic, covering CPU design, mnemonic 
instructions, and unix system calls. The hope is to be able to 
write a small utility program that takes standard input, does 
something or another, writes to standard output, reports to 
standard error, and supports command-line options that permit 
reading from and writing to files. 




On Fri, 2011-06-17 at 07:51 -0700, Glen Jarvis wrote:
> There's also an iPhone developer group that used to (and maybe still does) get together for helping each other with similar goals. I went a few times just to meet them. They're a great bunch of people and very helpful. They'll definitely help you get on the right track for learning objective-c and iPhone development.
> 
> Find then on meetup.com. And they may still have noisebridge as their meeting location.
> 
> Glen
> 
> On Jun 16, 2011, at 10:37 PM, Erik Schneider <eriktrips at gmail.com> wrote:
> 
> > Thanks all you wonderfully helpful people!
> > 
> > I am learning C because I wanted also to learn Objective-C and
> > eventually develop for OS X and iOS. That's a long ways off though--I
> > am self-taught in programming and have not yet made the leap from
> > simple command-line toys to GUI application programming. Also I know
> > it is not necessarily necessary to learn C before Objective-C but I am
> > a nuts-and-bolts kind of person and like to start at relatively low
> > levels. Relatively. I know I could go lower still, but I have only so
> > many lifetimes to live.
> > 
> > I have the K&R and will probably go back to it soon. It was a bit
> > terse for a relative newbie; it was also frustrating that all the
> > examples in the first few chapters are for processing input but they
> > do not teach you how to input input until much later, so I was not
> > happy not being able to test my code. I could have looked ahead I
> > suppose, but I have a thing for starting with Chapter One and
> > following with Chapter Two, etc. unless I am reading poetry, in which
> > case starting in the middle is always recommended.
> > 
> > Thanks for the video links. I will check those out!
> > 
> > Erik
> > 
> > On Thu, Jun 16, 2011 at 19:19, ashish makani <ashish.makani at gmail.com> wrote:
> >> My suggestions :
> >> 
> >> 1.If you like video lectures, here is a harvard course where all the video
> >> lectures & assignments, are available online for free.
> >> They are a bit long, but are pretty engaging , in both content & delivery,
> >> IMHO.
> >> http://cs50.tv/
> >> 
> >> 2. If you are trying to learn programming , and don't care about the
> >> language, MIT's introductory programming course 6.00 is also a great place
> >> to start.
> >> http://mit600.mit.edu/blog/course-info/
> >> http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/video-lectures/
> >> 
> >> All the Best,
> >> 
> >> cheers
> >> ashish
> >> 
> >> 
> >> On Thu, Jun 16, 2011 at 6:01 PM, Brian Morris <cymraegish at gmail.com> wrote:
> >>> 
> >>> To me, the advantage of K&R is that it is small and can work / review
> >>> through it quick.
> >>> It is maybe hard to find newer books which go into relevant topics which
> >>> are not huge and heavy.
> >>> 
> >>> For me, C++ is an advanced language to work with, tools have been
> >>> developed to make it easier to work with large projects, eg cmake and QT but
> >>> not everybody uses and there are other choices. It was the first OO language
> >>> and IMHO compromise between C and the higher level OO languages such as Java
> >>> and Python, which have become standard for learning OOP.  Also most other
> >>> languages have OO extensions.
> >>> 
> >>> C is close to the metal as they say and that may be kind of interesting.
> >>> Also fast. Depending on your interests you could find possibly an
> >>> application oriented book to go along with K&R. In general many langs have a
> >>> foreign function interface (FFI) for speed or hardware interface which
> >>> people mostly use C functions. So you can look there at small functions that
> >>> do specific things. To give you some motivating or interesting examples.
> >>> 
> >>> What is your motivation for learning C ? Mine was originally for numerical
> >>> programming (because required for a job), then later as a bridge to C++
> >>> (which I found disappointing, wish I had gone with Python).
> >>> 
> >>> One approach to learning a new programming language which may work for you
> >>> is to translate something. For instance take a Python function that is
> >>> central to your/ some code and rewrite it in C, simply plug it in and see if
> >>> it works, and see if it is any faster. I don't know how common this is in
> >>> Python (being new to it) but it is pretty ubiquitous in Perl (which can have
> >>> slow downs pretty bad).
> >>> 
> >>> On Thu, Jun 16, 2011 at 12:12 PM, Erik Schneider <eriktrips at gmail.com>
> >>> wrote:
> >>>> 
> >>>> Hi I'm kind of new but not entirely but enough so that I don't know if
> >>>> this is the right place to ask but since they do not have a list of
> >>>> their own that I can find:
> >>>> 
> >>>> Is anyone from the Intro to C Programming class reading who could
> >>>> answer questions like could I start attending next week?
> >>>> And if yes:
> >>>> Is the class using a text or texts, and if so what is/are the text(s)?
> >>>> And is there a particular thing the class is working on for next week?
> >>>> 
> >>>> If you can answer my questions but it would be more polite to email me
> >>>> the info than to use this list, then:
> >>>> eriktrips at gmail.com
> >>>> 
> >>>> Thanks!
> >>>> 
> >>>> Erik JM Schneider
> >>>> _______________________________________________
> >>>> Noisebridge-discuss mailing list
> >>>> Noisebridge-discuss at lists.noisebridge.net
> >>>> https://www.noisebridge.net/mailman/listinfo/noisebridge-discuss
> >>> 
> >>> 
> >>> _______________________________________________
> >>> Noisebridge-discuss mailing list
> >>> Noisebridge-discuss at lists.noisebridge.net
> >>> https://www.noisebridge.net/mailman/listinfo/noisebridge-discuss
> >> 
> >> 
> > 
> > 
> > 
> > -- 
> > Erik JM Schneider, PhD
> > blog.eriktrips.com
> > eriktrips at gmail.com
> > _______________________________________________
> > Noisebridge-discuss mailing list
> > Noisebridge-discuss at lists.noisebridge.net
> > https://www.noisebridge.net/mailman/listinfo/noisebridge-discuss
> _______________________________________________
> Noisebridge-discuss mailing list
> Noisebridge-discuss at lists.noisebridge.net
> https://www.noisebridge.net/mailman/listinfo/noisebridge-discuss
> 





More information about the Noisebridge-discuss mailing list