From owner-freebsd-questions@freebsd.org Sat Jul 2 14:53:08 2016 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A738BB8FB6E for ; Sat, 2 Jul 2016 14:53:08 +0000 (UTC) (envelope-from matthew@FreeBSD.org) Received: from smtp.infracaninophile.co.uk (smtp.infracaninophile.co.uk [IPv6:2001:8b0:151:1:c4ea:bd49:619b:6cb3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "smtp.infracaninophile.co.uk", Issuer "infracaninophile.co.uk" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4C1952FD7 for ; Sat, 2 Jul 2016 14:53:08 +0000 (UTC) (envelope-from matthew@FreeBSD.org) Received: from liminal.local (liminal.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3636:3bff:fed4:b0d6]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: m.seaman@infracaninophile.co.uk) by smtp.infracaninophile.co.uk (Postfix) with ESMTPSA id 6A1FF94E2 for ; Sat, 2 Jul 2016 14:53:04 +0000 (UTC) Authentication-Results: smtp.infracaninophile.co.uk; dmarc=none header.from=FreeBSD.org Authentication-Results: smtp.infracaninophile.co.uk/6A1FF94E2; dkim=none; dkim-atps=neutral Subject: Re: "Simple" Languages in FreeBSD To: freebsd-questions@freebsd.org References: <20160630175243.063e07a7@KoggyBSD.org> <86poqx31vh.fsf@WorkBox.Home> <20160701143553.159d8c72@KoggyBSD.org> From: Matthew Seaman Message-ID: Date: Sat, 2 Jul 2016 15:52:56 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.1.1 MIME-Version: 1.0 In-Reply-To: <20160701143553.159d8c72@KoggyBSD.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="8fbjsMsvMmELBnoUE1b1RdQrqkwVBvBOM" X-Virus-Scanned: clamav-milter 0.99.2 at smtp.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-1.2 required=5.0 tests=BAYES_00,SPF_SOFTFAIL autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on smtp.infracaninophile.co.uk X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Jul 2016 14:53:08 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --8fbjsMsvMmELBnoUE1b1RdQrqkwVBvBOM Content-Type: multipart/mixed; boundary="upJGitNtsPtfV03Qe9tnMLW3bm1GwLg6I" From: Matthew Seaman To: freebsd-questions@freebsd.org Message-ID: Subject: Re: "Simple" Languages in FreeBSD References: <20160630175243.063e07a7@KoggyBSD.org> <86poqx31vh.fsf@WorkBox.Home> <20160701143553.159d8c72@KoggyBSD.org> In-Reply-To: <20160701143553.159d8c72@KoggyBSD.org> --upJGitNtsPtfV03Qe9tnMLW3bm1GwLg6I Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Brandon J. Wandersee wrote: >> I'll echo what some others have said, and recommend that before you >> learn any language you should learn about the fundamentals and >> different paradigms of programming itself: variables, loops, >> branches, and all that. Most programming language tutorials I've seen >> assume the reader already has a general understanding of how to >> string logic together when writing a program. On 01/07/2016 19:35, Allen wrote: > I agree with you; Every book or how to that I seem to see, assumes from= > the get go that you already have an understanding of this, and I don't > really.=20 Yeah. There are whole underlying sets of concepts that are common to pretty much all programming techniques. These are something you tend to pick up as you go along rather than learning about specifically. You can't really understand these things separately to the experience of programming, but to the sort of people that write programming languages or that write textbooks about programming they're so basic and so familiar that they just seem self evident and not really worth talking about. The best approach is simply to jump in there and have a go. Learn by making and fixing your own mistakes. It seems really hard at first, but that's mostly unfamiliarity. You'll quickly get over that, and once you've taken a few steps, the following ones come easier. It doesn't really matter what language you choose for this, although some will highlight particular areas more than others. That's why it's good to learn many different languages -- as many as possible really -- since each new language will extend and build upon concepts from the last one. You'll find they get easier as you go along. Not only that, but the lessons learned with new languages will add to your understanding of previous languages. Try and find good examples to copy -- stress over the 'good' part though, and think about why certain things are done the way they are. Like any intellectual exercise, this is where you are going to have to engage your critical faculties. The Internet is full of the results of people blindly copying each other's bad examples, and sometimes it's hard for the voice of reason to make itself heard over the thundering herd galloping in the wrong direction. Cheers, Matthew --upJGitNtsPtfV03Qe9tnMLW3bm1GwLg6I-- --8fbjsMsvMmELBnoUE1b1RdQrqkwVBvBOM Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQJ8BAEBCgBmBQJXd9VQXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2NTNBNjhCOTEzQTRFNkNGM0UxRTEzMjZC QjIzQUY1MThFMUE0MDEzAAoJELsjr1GOGkATRHkP/Ayd4RbTVSNjXpLfGPfTbx/b AUhceDARC/wPIKjHbk3wBqhNsBZBp7IeWcny6M3kFPyFdDK5A7LGsyS0nVo5Sb9r rcFIwkRKCbvf6RiuyuWi46qevyo/Zu+0i6OAXGWZ15WzsR7J1WHAJwPL/1uxe7by rJ5aB0aupxyMeSWpejvJeN550xVqpRLeYBKzr7FegRjFTsd7SaDGODi9i2MRR+g9 VRS/bFejquzTHvONNP3HBtw5XQCMcM5qntu5ZHJzvJJnzNnTbfH0F6aXvdFGGMQ6 rW17zeJhPpXNVb0MJou8KaZ8XKZ0d295aQxCAj8ZM+wfHLjnAgDVJIoYuLhMMkg5 UNgo94FjvzMNXGxB9KzpYGcsy8GWFq26Tn6cG5p3hVZOuLUioQstKo+8Wc2C8PW3 zlf3wQL3vZkzsF4EdP1kohoD5gDYdMgJvx4I06HrT/qbPRCWr9ks62JfbAIOZ+pO 8v0+Db33RiKDySFrhzSMZ9CbD2y1s2ZZpmyfCrfQz2IdGlMrtO+llDY30+Xg5KJY 7u/Mdql/7T07M2g4c6Js/G7P2V7ABwLLiXq+mM1O6nE63BDaQQw1+pdfwNJ7IsQP QGE74rBzfHRzSu5H02+FmcNgUbZyhAayuuRu0lN7PIZ6iAIjcXUaPguxo1xvaC40 ZWPpZRU2aIHm6IaEP5L3 =nHcD -----END PGP SIGNATURE----- --8fbjsMsvMmELBnoUE1b1RdQrqkwVBvBOM--