4 ms·
"For web development, you don't need any of that." For Web development on Windows, that is a good list of a minimal list of EXACTLY what is needed. Web develo
by NY_Entrepreneur 15y ago
"For web development, you don't need any of that."
For Web development on Windows, that is a good list of a minimal list of EXACTLY what is needed. Web development on Windows is JUST what I'm doing, and that list of topics is JUST what is centrally involved.
What are you going to leave out? T-SQL? OS backup and recovery? Good skills with an IDE or editor?
Yes, learning most of, say, Visual Basic by itself is easy. The 'rub' is that for anything at all serious in Web development or just software development, it is just crucial to make good use of .NET, and that is HUGE. For a long time, nearly each time you turn around, you will need to use another .NET class, and that will take you 1-3 dozen Web pages at MSDN to find, download, save, index, abstract, and read. The total of MSDN Web pages needed adds up quickly: I have over 2500 now, and it grows quickly. Just yesterday I downloaded a lot just for 'request data validation'. Before that, the topics were HtmlEncode and UriEncode. Before that, TCP/IP sockets. Before that, Windows Communications Foundation. Before that Windows 'remoting'. Before that, Windows remote procedure call. Before that, a LOT on SQL Server administration and mangement. And on and on and on. It's ENORMOUS.
- philwelch 15y ago> For writing code, need to learn either an integrated development environment (IDE), e.g., Visual Studio, or get good with a powerful text editor (I use KEdit) and its macro language (I have about 150 such macros) All you need at first is something you can type text into that knows how to highlight syntax. You don't even need to know the features of that particular editor, aside from stuff like "save" and "open". > and a scripting language. For what, exactly? > And need to get good with Windows, e.g., have traversed much of the obscure tree of things to click on. And need to be good at software installation Why? How does this actually help? How is this actually difficult? > Should learn some Word, Excel, and PowerPoint. None of that has anything to do with programming. And how is this actually difficult? > Should learn some T-SQL, HTML, CSS, ASP.NET, and ADO.NET. Well, you need HTML and CSS for sure, and you need SQL. And I think you're going about it the wrong way if you try and comprehensively read and memorize the API documentation for every single framework call you make. Any programmer looks up what he needs on a case by case basis and over time comes to remember the stuff he uses a lot. But I think you're just making it harder on yourself using the Microsoft stack. There are, believe it or not, entire web development frameworks where you don't actually need to manage the TCP/IP sockets yourself. > Also need to be good at backup and recovery, ESPECIALLY of the operating system and boot drive. This is part of owning a computer, not programming. It's also not difficult.
- NY_Entrepreneur 15y agoThe question was: "I want to start a startup, but I don't know how to program. How long will it take to learn?" So, he wants to "learn" "how to program". Good objective, clearly stated. For your "All you need at first is something you can type text into that knows how to highlight syntax. You don't even need to know the features of that particular editor, aside from stuff like 'save' and 'open'." Your "All you need at first" is not very relevant to the clearly stated objective of learn to program for a startup. You just ran off the subject to try to find something to object to. From your statement, it would appear that even Notepad would be sufficient, but it is not. Instead for anything productive even just in the learning, what I wrote is on the center of the target. Actually, the editor I use, KEdit, does know "how to highlight syntax", and I think so little of that I keep it turned off and don't use it. I didn't go into what makes a good editor or IDE, but there's a LOT to it even when "how to highlight syntax" doesn't make the list. For your "> and a scripting language. For what, exactly?" If not using an IDE, then need a scripting language for common tasks otherwise done by the IDE. Or maybe you would expect the poor student to type C:\Microsoft.NET\Framework\v2.0.50727\vbc.exe each time they wanted to do a Visual Basic compile? For the Microsoft C/C++ compilers used outside of an IDE, generally need to set up a lot of environment variables, and want those in a script. Once actually see how to build a DLL, want that in a script so have some good documentation of just what did and don't have to look it up, make it work, and type it in all over again. For running T-SQL, don't want to type in C:\Program Files\Microsoft SQL Server\90\Tools\Binn\SQLCMD.EXE so want that in a script, along with some more options. And DO want to do a LOT with T-SQL instead of, say, SQL Server Management Studio (SSMS) because (1) the documentation of T-SQL is much better, (2) get an explicit record of just what did, (3) get to put comments in the file with the T-SQL (no place for comments when using a GUI) so that six months later can understand what did, (4) some of the most competent documentation for how to do system management and administration of SQL Server is in terms of T-SQL and not clicks on SSMS. What I wrote is correct: If don't depend on an IDE for essentially everything in the development, then need a scripting language. For "> And need to get good with Windows, e.g., have traversed much of the obscure tree of things to click on. And need to be good at software installation Why? How does this actually help? How is this actually difficult?" If get very far with it, then it's horrendous. The clicking and clicking and clicking goes on and on. There's next to nothing good in documentation. Much of what need to learn is just by trying, e.g., for everything in sight on the screen right click, left click, double right click, double left click and see what the heck happens. "> Should learn some Word, Excel, and PowerPoint. None of that has anything to do with programming. And how is this actually difficult?" If they don't know how to program, then maybe they won't know these tools, either. If they are doing a startup, then they should know them. Word is a pain in the back side, very poorly documented, and commonly takes about two weeks to get good enough to do, say, a document good enough to be, say, a 'business plan' or a report to the Board. Similarly for writing letters to the government, lawyers, etc. Excel, if get far enough to do some financial projections for fund raising or the Board the first time takes some days or weeks. Once are okay with Word and Excel, then PowerPoint can go quickly, say, the first good 'foil deck' takes a few days wrestling with PowerPoint. And I omitted Outlook: Back when I was on OS/2, I wrote my own POP3 e-mail and used it for years as a great tool. But with Outlook, I commonly yell and scream myself hoarse in frustration. Outlook is awash in serious problems: E.g., the PST files are by default in a hidden directory deep in the directory tree on the boot drive; takes a while to discover this and how to put the PST files in a decent place. "Decent"? Yes: DO want to backup the PST files as part of daily incremental backup, but do NOT want the boot partition as part of the daily incremental backup. So, have to get the Outlook PST files OFF the boot partition. Next, starting a new PST file commonly causes Outlook to lose the Contact List, and to get back the list have to discover a certain Web page at Microsoft and go through an obscure dance of about 12 steps. If have more than one PST file seen by Outlook, then on each use of Outlook it will set the archive bits of all the PST files so that they all get backup in incremental backup. So need to find a workaround or can have the daily incremental backup start at 500 MB or so. The options in Outlook are horrendous to get set appropriately; I finally traversed the whole tree of menus, set everything, and documented each click. We're talking DAYS of work. It's super tough to find old e-mail in Outlook. And those are just some of the problems; I omitted security issues and much more. "And I think you're going about it the wrong way if you try and comprehensively read and memorize the API documentation for every single framework call you make. Any programmer looks up what he needs on a case by case basis and over time comes to remember the stuff he uses a lot." I wrote nothing that suggested I "comprehensively read and memorize ..." You are straining to get off the subject to find things to criticize. Indeed, I wrote that I "index, abstract" the documentation, of course "to look up" as needed. Still, at least the first time, have to read the pages downloaded. And, again, to get very far with the goal "I want to start a startup, but I don't know how to program. How long will it take to learn?" especially for "a startup", really WILL need MORE than 2500 such Web pages. To pull this all off in one year, we're talking ballpark 10 Web pages a day, on top of the rest. It's beginning to look like a busy year. For "But I think you're just making it harder on yourself using the Microsoft stack." there are pros and cons going with Microsoft. While there are alternatives, net it's not a bad decision. It's not the more popular decision here at HN, but it's still okay, and it's the one I selected so can write about. If some alternatives are much faster, fine, but for the goal "I want to start a startup, but I don't know how to program. How long will it take to learn?" especially for "a startup", my main point is correct: Going with Microsoft, one year is FAST. For "> Also need to be good at backup and recovery, ESPECIALLY of the operating system and boot drive. This is part of owning a computer, not programming. It's also not difficult." It's also commonly neglected, especially by people who are not yet deep enough into computing to program. So, it is reasonable to believe that the person might have to learn. For a startup, it's IMPORTANT. And, as I wrote, for ESPECIALLY of the operating system and boot drive it IS difficult. It's a self-inflicted, unanesthetized root canal procedure, at least. Oh, it's easy if don't do it. And it's easy if do it but don't test to see if it actually works, that is, results in a bootable partition with everything back where it was. But if do it and confirm that it actually works, then it's TOUGH. Just the testing requires running experiments where have to reinstall the OS, likely several times. There may be some easy ways to proceed, with some special third party programs or some newer versions of Windows, but for XP SP3 and using NTBACKUP, we're DEFINITELY talking a self-inflicted, unanesthetized root canal procedure, at least. Why? The relevant documentation for NTBACKUP totally sucks: About all a user can do is just guess and try. Getting a good solution to backup and restore of a bootable XP SP3 partition with NTBACKUP is a real accomplishment, 1-2 weeks of work. But NTBACKUP does have some highly desirable functionality: It can do a 'shadow copy' where it backs up the boot partition while the partition is booted and running. And it can restore to another disk partition (with the same drive letter) of a different size. As I discovered the hard way, the testing to be sure the are doing the backup so that a restored partition actually is bootable is just CRUCIAL. Actually, in the end, NTBACKUP can be okay, but the documentation is so bad that lots of experiments are needed to get the procedure working correctly and test it to be sure it is working correctly. The main problem is just the documentation. If someone hands you some good documentation, say, in a well documented script, then you can be okay right away. Then you can save 1-2 weeks.
- 0x12 15y ago> Web development on Windows is JUST what I'm doing Surprise, there are more environments that you could do web development on and quite a few of them are a lot easier to master than the one you describe.
- NY_Entrepreneur 15y agoI was addressing the original question of the guy who wanted to learn to program for a startup. So, he needs to know more than just any 'Web development environment'. Also important is scalability. Some 'development environments' that are easy to get started with have bad reputations for 'scalability'. Another practical issue is, is the guy just a developer in a group where he can draw on others in the group or is he really, now, and during most of his development, just one guy and not funded and has to do nearly everything alone? To do it all as just one guy means he needs to know a LOT about computing a bit far from just Web development alone. Actually, I omitted a lot: For a Web startup, usually need something like relational database, e.g., SQL Server. If the startup gets very far into production, then he will need some background in SQL Server management and administration, e.g., performance, backup, and recovery, and I omitted such topics. I gave a description of some of what is important if developing on Windows. Here at HN, Windows is not the most popular option. But if you have some alternatives in mind, then describe them,
- pbreit 15y agoNo one who "wants to do a startup" and wants to learn how to program should even think about using Microsoft tools. Microsoft tools are complicated and expensive. The educational resources are expensive or non-existent. The incidence of Microsoft tools in startups is very low (in the Bay Area they are non-existent).