Web Development Stack
-
Southern California Why does that matter?
If it's not broken, fix it until it is
Kevin Marois wrote:
Why does that matter?
Why indeed it does. The beaches are full of fully developed stacks! ;) Marc
Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project! Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny
-
COBOL's the way of the future, Man! I was told that in '73, and it was damned true!
I wanna be a eunuchs developer! Pass me a bread knife!
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
I recommend learning Microsoft especially if you have been doing windows development. Assuming your windows development was in C# then you already know the language to use ASP.Net. Granted, there are a lot of concepts from windows development that do not exist in the web so you still have a bit to learn. Look into ASP.Net and MVC and for client side scripting, jQuery and possibly Angular.js. But yes, the web is full of possible ways to do things.
There are only 10 types of people in the world, those who understand binary and those who don't.
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
Kevin Marois wrote:
It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice.
You're correct. Web development involves a lot of technologies. You would need to know the stateless nature of web and how the web works by understanding the request and response flow. You need to learn client-side technologies: CSS, JavaScripts, AJAX, HTML, etc.. and also learn server-side stuff: Database, Services, Web API, etc.
Kevin Marois wrote:
Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need?
That really depends on your interest considering that there are bunch of web development platforms to choose from. But since you are coming from a Windows background, then I would recommend you to start looking into ASP.NET. ASP.NET provides a variety of platforms that you can use to get yourself into web development. ASP.NET offers three frameworks for creating web applications: Web Forms, ASP.NET MVC, and ASP.NET Web Pages. All three frameworks are stable and mature, and you can create great web applications with any of them. No matter what framework you choose, you will get all the benefits and features of ASP.NET everywhere. Now which web development framework to choose? Since you are coming from a Windows Forms development background, then you can start jumping into WebForms to take advantage of the design surface, powerful server controls and components. This is the easiest entry point to ASP.NET because you are already familiar with the drag-and-drop and event driven model from windows forms. If you are willing to take the challenge, I would really recommend you to learn ASP.NET MVC over WebForms. Why? (1) Provides a clean separation of concerns (the Model, the View and the Controller) (2) Gives you full control over your codes, HTTP, Request, Response, JavaScripts, CSS, HTML and so on (3) Provide clean and friendly Urls through it's built-in routing capability (4) You'll get the feel of real web development because there's no abstraction involved. (5) It's easy for you to learn Web API as it follows/uses Controller based pattern like MVC Alternatives: You could also try learning SPA technology like Angular or Knockout as front-end, but this would probably give you a big learning curves as you will mostly dealing with c
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
I'm probably not being too helpful here, but the reason I stay away from web client development is because I have an aversion to JS and CSS. I don't want to have to spend several days implementing a UI I can build with WinForms in a few hours. I still enjoy web server development (I use ASP .NET MVC, SQL server) and have recently moved to building Android clients. /ravi
My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com
-
Kevin Marois wrote:
Can you guys define the stack that I REALLY need to learn
The one that will get you the job. The one that you want to use day in day out The one you can learn quickest, because it'll be redundant before you can say ASP.NET Core 1.0 Release Candidate 3 Given you're a Windows guy I'd just stick to bread and butter and learn ASP.NET MVC with C#. That'll get you most of the way there. For the backend use Entity Framework 6 (leave EF7 / EF Core for now - it's not baked) and for the front end learn Bootstrap for styling and maybe Angular 2 and TypeScript for the web based front end. This will give you enough buzzwords for your resume and enough experience to muddle your way through whatever stack they thrust upon you. It's more about learning how to deal with stateless programming and the difference between client side and server side programming. Work that one out and it's all just a variation of the same. If you want to just ditch Windows then what about PHP or Node.js? Either one is in hot demand and simple to learn.
cheers Chris Maunder
Thanks Chris
If it's not broken, fix it until it is
-
Kevin Marois wrote:
Can you guys define the stack that I REALLY need to learn
The one that will get you the job. The one that you want to use day in day out The one you can learn quickest, because it'll be redundant before you can say ASP.NET Core 1.0 Release Candidate 3 Given you're a Windows guy I'd just stick to bread and butter and learn ASP.NET MVC with C#. That'll get you most of the way there. For the backend use Entity Framework 6 (leave EF7 / EF Core for now - it's not baked) and for the front end learn Bootstrap for styling and maybe Angular 2 and TypeScript for the web based front end. This will give you enough buzzwords for your resume and enough experience to muddle your way through whatever stack they thrust upon you. It's more about learning how to deal with stateless programming and the difference between client side and server side programming. Work that one out and it's all just a variation of the same. If you want to just ditch Windows then what about PHP or Node.js? Either one is in hot demand and simple to learn.
cheers Chris Maunder
Chris Maunder wrote:
For the backend use Entity Framework 6
My two cents here. If the site is light weight, the Entity Framework is okay. However, if the site uses any kind database transaction processing, needs to perform lots complex of queries, or if you ever need to generate complex SQL reports, as a former DBA, I would recommend against using EF in favor of a tailored data access layer. Tuning EF generated SQL statements is painful and don't get me started on how it creates its tables.
if (Object.DividedByZero == true) { Universe.Implode(); } Meus ratio ex fortis machina. Simplicitatis de formae ac munus. -Foothill, 2016
-
Chris Maunder wrote:
For the backend use Entity Framework 6
My two cents here. If the site is light weight, the Entity Framework is okay. However, if the site uses any kind database transaction processing, needs to perform lots complex of queries, or if you ever need to generate complex SQL reports, as a former DBA, I would recommend against using EF in favor of a tailored data access layer. Tuning EF generated SQL statements is painful and don't get me started on how it creates its tables.
if (Object.DividedByZero == true) { Universe.Implode(); } Meus ratio ex fortis machina. Simplicitatis de formae ac munus. -Foothill, 2016
So full disclaimer: I don't actually like EF either. However: many shops do and it's worthwhile at least knowing it. If you're going to have to use it then you need to know how to make it behave.
cheers Chris Maunder
-
Chris Maunder wrote:
For the backend use Entity Framework 6
My two cents here. If the site is light weight, the Entity Framework is okay. However, if the site uses any kind database transaction processing, needs to perform lots complex of queries, or if you ever need to generate complex SQL reports, as a former DBA, I would recommend against using EF in favor of a tailored data access layer. Tuning EF generated SQL statements is painful and don't get me started on how it creates its tables.
if (Object.DividedByZero == true) { Universe.Implode(); } Meus ratio ex fortis machina. Simplicitatis de formae ac munus. -Foothill, 2016
Agreed, I wouldn't use EF for anything but CRUD. But you can admittedly achieve a lot with just CRUD.
Wrong is evil and must be defeated. - Jeff Ello
-
COBOL's the way of the future, Man! I was told that in '73, and it was damned true!
I wanna be a eunuchs developer! Pass me a bread knife!
You make fun, but there's a grain of truth to that, especially if you combine COBOL with CICS. If you've ever worked with CICS, the web, in concept at least, ain't so strange.
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
Theory, all you need is a theory. Most companies doesn't want to spent resources that you can use in any company in the future. It seems unbelievable at first, but if you know computer sciences well enough and they throw you at almost any language (I exclude "malbolge" here) and any platform (OS, development environment, etc.), you can handle it without knowing it (as long as any resource found by google is available). In short: learn as you go.
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
I feel your pain, Kevin. I'm primarily a back-end (database layer) guy myself and have been developing code for nearly 40 years. If I need GUI presentation I do it in WinForms. It's a mature (and easy-to-use) user-interface technology and despite what some of the propeller-heads say it's not going away any time soon. It runs on every version of Windows including Windows 10. Microsoft finally realized that they were playing with fire when they tried to eliminate the desktop. It's been entertaining to watch. Having said that, if you feel that you need to learn web technology I would encourage you to ease into it by learning the basics of HTML (probably HTML5 since that's the level it's at now) and work into ASP.Net. The reason for this is that you have a fighting chance at leveraging what you already know, particularly if you are already .Net aware (C# or VB.Net). I have been "dabbling" into web development for a long time and the myriad of things you have to know can drive you bonkers. In my case I've developed enough knowledge of it to fix bugs in it but to have to learn everything there is to create new stuff for the web, well, I'd just as soon be out back painting the fence at this point! I'm still tinkering with AJAX and other things here and there but not with the intent of actually developing that much with it. You're probably a bit younger than I am, so go for it but, like I said, you will probably want to pick up the basics of HTML and ASP.Net before you begin fooling around with CSS, AJAX and all the other goodies out there. The software development industry (particularly when it comes to web development) is a real minefield as far as protecting your sanity is concerned! HTH, -CM
If you think that hiring a professional is expensive wait until you hire an amateur! - Red Adair
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
Take everything that everyone has said with a grain of salt. Different cities have completely different common stacks. For example where I am it's hardly worth knowing ASP.Net MVC because there's so many senior devs around who will convince managers that MVC is just a fad and we should stick with Web Forms. Your best bet is to look at job listings local to you and see what they're looking for.
-
You make fun, but there's a grain of truth to that, especially if you combine COBOL with CICS. If you've ever worked with CICS, the web, in concept at least, ain't so strange.
Weeell, yes, unless your company is gobbled up by another that's stuck with IMS/DC and kicks CICS out. Been there, done that and sold the T-Shirt :(
-
Kevin Marois wrote:
Can you guys define the stack that I REALLY need to learn
The one that will get you the job. The one that you want to use day in day out The one you can learn quickest, because it'll be redundant before you can say ASP.NET Core 1.0 Release Candidate 3 Given you're a Windows guy I'd just stick to bread and butter and learn ASP.NET MVC with C#. That'll get you most of the way there. For the backend use Entity Framework 6 (leave EF7 / EF Core for now - it's not baked) and for the front end learn Bootstrap for styling and maybe Angular 2 and TypeScript for the web based front end. This will give you enough buzzwords for your resume and enough experience to muddle your way through whatever stack they thrust upon you. It's more about learning how to deal with stateless programming and the difference between client side and server side programming. Work that one out and it's all just a variation of the same. If you want to just ditch Windows then what about PHP or Node.js? Either one is in hot demand and simple to learn.
cheers Chris Maunder
Chris Maunder wrote:
Given you're a Windows guy I'd just stick to bread and butter and learn ASP.NET MVC with C#. That'll get you most of the way there. For the backend use Entity Framework 6 (leave EF7 / EF Core for now - it's not baked) and for the front end learn Bootstrap for styling and maybe Angular 2 and TypeScript for the web based front end.
I concur. Learning MVC means learning a lot of the major web building blocks -- I know 'cuz I'm doing it now. I've been out of development for a few years and my web experience is more than a decade out of date. [Been doing C# desktop and have background in HTML/CSS/XML and pre .NET ASP, plus some PHP.] At last count MVC includes: C# JavaScript JQuery Bootstrap Razor Entity Framework HTML CSS This list is not exhaustive, I've probably missed something ... Note: I have found that none of the above is difficult, but there's a lot of pieces that interact. However, it's an excellent starting point. As Chris pointed out, everything changes, so what you learn today may not be directly useful next year. But the more we learn, the more we become capable of learning, so for a web developer career, it's all movement in a positive direction.
-
You make fun, but there's a grain of truth to that, especially if you combine COBOL with CICS. If you've ever worked with CICS, the web, in concept at least, ain't so strange.
ICL's TPMS system was pretty much MVC back in the 80's
-
Agreed, I wouldn't use EF for anything but CRUD. But you can admittedly achieve a lot with just CRUD.
Wrong is evil and must be defeated. - Jeff Ello
I often think that with business apps, we are mainly pulling stuff out of a database & displaying it (screen or report) and frequently, that's it - occasionally we want to change/add some & put it back. How does it get so complicated?
-
My current contract is coming to an end and I'm trolling for work again. Every time I go through this I typically see more web based work than anything else, and being a purely Windows guy I have always felt a sense of dread when trying to considering learning web development. My idea of web development is something like this[^]. It seem like there are WAY too many technologies to learn to truly be effective, yet if I want to stay employed it seems that I've got no real choice. Can you guys definethe stack that I REALLY need to learn, so I can focus in on what I need? Thanks
If it's not broken, fix it until it is
-
I often think that with business apps, we are mainly pulling stuff out of a database & displaying it (screen or report) and frequently, that's it - occasionally we want to change/add some & put it back. How does it get so complicated?
Stewart Judson wrote:
How does it get so complicated?
Developers that think they are smarter than everyone else make it complicated by trying to write code that says "look how damn smart I am".
No matter where you go, there you are...~?~
-
Kevin Marois wrote:
Can you guys define the stack that I REALLY need to learn
The one that will get you the job. The one that you want to use day in day out The one you can learn quickest, because it'll be redundant before you can say ASP.NET Core 1.0 Release Candidate 3 Given you're a Windows guy I'd just stick to bread and butter and learn ASP.NET MVC with C#. That'll get you most of the way there. For the backend use Entity Framework 6 (leave EF7 / EF Core for now - it's not baked) and for the front end learn Bootstrap for styling and maybe Angular 2 and TypeScript for the web based front end. This will give you enough buzzwords for your resume and enough experience to muddle your way through whatever stack they thrust upon you. It's more about learning how to deal with stateless programming and the difference between client side and server side programming. Work that one out and it's all just a variation of the same. If you want to just ditch Windows then what about PHP or Node.js? Either one is in hot demand and simple to learn.
cheers Chris Maunder
Only #1 is relevant; unless this is a hobby. If you want to work "now", its: Magento, Umbrago, Shopify, WordPress, etc. So, study the platforms' architecture and peddle oneself accordingly. Just being able to configure, create plugins, debug these sites is worthwhile. A good start to other (web) development opportunities, IMO.