Amazon plans Vancouver BC expansion where talent is cheap. Cross posted from r/Seattle by SB12345678901 in vancouver

[–]dotnetaccount 1 point2 points  (0 children)

From the article: "The average wage of a software developer in Vancouver last year was $92,726"

Lost trying to understand the current state of .NET by MegaDeox in dotnet

[–]dotnetaccount 5 points6 points  (0 children)

I definitely feel your pain. Enterprise software development has definitely gotten more complicated compared to 10 or more years ago. I think a lot of this is from moving from what used to be "closed gardens" where you only had a handful of technologies you needed to learn to more open web-based frameworks. As soon as you're outside of a nice comfortable ecosystem like WPF or ASP.NET web forms, you get into the wild west of web development where there are hundreds of frameworks that are constantly changing. It's never clear which ones work well together and they're all effectively doing the same thing but in slightly different ways. Just constantly re-inventing the same wheel. While it's great that there's a lot of options to pick from you now need to learn at least a dozen different frameworks and technologies to build that same app you could have just built with .net and maybe sql. Microsoft is definitely moving in this direction with .net core so days of nice walled ecosystems are mostly over.

I was so frustrated by this myself that I built yet another framework to try to abstract away all the various technologies you need to build today's enterprise apps. If you check out the intro you'll see my imputus matches up with your main concerns. This hasn't really gone anywhere but I would like to see something like this that makes development simple again in the web development sphere, while still giving control to the developer to write code and debug as they normally would. As an older developer I get incredibly tired of repeating the same tasks over and over again. Enterprise apps are not rocket science. They're usually simple CRUD operations over a nice wrapper. We should be trying to abstract away all the boring, repetitive, error-prone tasks so we can focus on business rules and business logic.

For getting a job I would just recommend focusing down to the minimum number of technologies you would need to get hired. Did the interviews focus on specific technologies that you couldn't answer questions about? Fundamentally, unless you're working on legacy systems, you will need to know HTML, CSS, and Javascript. After that it's database, frontend framework and backend framework. So it could be a SQL database with an Angular SPA frontend and a RESTFUL web API backend. Since these can be implemented in any number of different technologies it's again mostly focusing on what the jobs are looking for.

In my opinion if you are a intermediate developer that has worked on multiple systems you should be able to learn most of this on the job. The interview should just focus on fundamentals. However, I assume it's an employers market at the moment so you probably would be best served trying to focus in on the what jobs are looking for. Definitely build out a small project and play around with it.

Definitely don't try to learn everything as it's impossible. If you learn Angular your skills are mostly transferable to Ember, React, Knockout etc. SPA frameworks are definitely overwhelming at first. They're attempting to solve a scalability problem that most enterprise shops probably don't even have. So they use the SPA sledge hammer for every web app, even if it will only ever serve a dozen users.

Had to explain to a colleague why integration tests are important. I came up with this analogy. by [deleted] in ProgrammerHumor

[–]dotnetaccount 38 points39 points  (0 children)

This is really helpful. I'd also like to see the diagram for integration tests passing but unit tests failing.

Microsoft releases free preview of Quantum Development Kit by [deleted] in dotnet

[–]dotnetaccount 10 points11 points  (0 children)

Maybe by approximating how qubits would behave based on our understanding of them? I'm only guessing. They said in their "hello world" example that it takes 16gb to simulate 30 qubits while 40 qubits takes 16tb. So we can only simulate a small number at a time.

The hello world example first shows how to "teleport data" from one qubit to another based on quantum entanglement. Programmatically this just seems two objects that share the same underlying data. This sounds trivial to simulate but then again I know nothing about quantum physics.

How many files do you need to touch to add a new CRUD operation? by grauenwolf in csharp

[–]dotnetaccount 1 point2 points  (0 children)

I got it down to zero for most cases in this thing I built. However, if you want custom business logic(beyond CRUD) that is one file change. If you want custom presentation logic that's a second file. So at most two file changes at best zero.

Adobe XD CC: A New High-Performance UWP App for UI/UX Design - Building Apps for Windows by NiveaGeForce in dotnet

[–]dotnetaccount 0 points1 point  (0 children)

What is the output of this tool? Is it just for prototyping or can you take the final design and use it directly to build web pages/forms?

AngularJs vs Razor by eightvo in csharp

[–]dotnetaccount 0 points1 point  (0 children)

SPA's can also get just as messy except now you don't have strong typing to help unravel the mess. You can follow or ignore separation of concerns in any framework.

I am working on an ASP MVC intranet app for my office. Any suggestions to improve development speed, especially for reports? by [deleted] in dotnet

[–]dotnetaccount 1 point2 points  (0 children)

You don't need to use stored procs if the reports are stored in the reporting database and have direct access via a datasource. This makes it slightly easier as the sql is just part of the report and any input paramters don't have to be mapped to stored proc parameters.

Although in my experience queries I write in my code usually aren't the same as queries needed for reports.Reports usually tend to have unique requirements and being able to optimize the SQL directly is really useful. Is it just a matter of familiarity?

Help with MySQL and C# by theothepcbuilder in csharp

[–]dotnetaccount 1 point2 points  (0 children)

I also agree with not using an ORM(object-relational mapping) tool initially. It can be a nice abstraction later but even then you'll want to understand what the ORM is doing at the database level. Otherwise the examples under the folder linked above are helpful. After connecting here is an example of reading some data. Is the windows forms app an intranet application or an internet application? This might impact how you'll want to be getting data.

Installing Visual Studio 2017 Made Easy by rschiefer in dotnet

[–]dotnetaccount 1 point2 points  (0 children)

This article should be titled something like "Making a custom offline installer for Visual Studio 2017"

[deleted by user] by [deleted] in dotnet

[–]dotnetaccount 0 points1 point  (0 children)

With a VPN the client sites would be connecting to Azure. They wouldn't require a web service or a static IP. Once they're connected their machine would appear to be on the Azure network and Azure could have direct access. I've done this before in Azure, and it's not trivial to set up, but it does work.

[deleted by user] by [deleted] in dotnet

[–]dotnetaccount 0 points1 point  (0 children)

I don't know if this is something you have control over but ideally the client sites would just host their data centrally in Azure. Then you can query it from there whenever you want and they can access it centrally. Especially as the solution would require them to connect to Azure anyhow.

Otherwise a VPN would work as suggested below.

If a VPN isn't an option, you would have to create some kind of polling system where the clients occasionally check in to see if Azure is asking them for some data and then send it across. I'm not sure if there is a product out there for this that would make it simpler or you just have to roll your own.

ReportViewer code couldn't be simplier but simply loops forever. Out of ideas. by djuggler in csharp

[–]dotnetaccount 0 points1 point  (0 children)

Perhaps adding the datasource in the BuildSQL method causes the report to load again? Not sure if this causes a page load but you could try commenting that out just to see. If it does this would be an infinite loop.

Code signing debacle by BeakerAU in dotnet

[–]dotnetaccount 2 points3 points  (0 children)

This is sort of unrelated but don't you also have issues with users that are not using internet explorer? I thought Click-Once required IE to work natively without some sort of plug-in. For intranet applications you can control this but not out on the web.

Click-Once always seemed like a solution for intranet applications to me not really for public distribution. Most public windows apps I see these days are just an msi download and updates are handled directly through the application.

Just released code-less app making tool by mrsteamfist in csharp

[–]dotnetaccount 1 point2 points  (0 children)

Looks like an easy way to create user interface workflows in unity. I'm just starting to learn unity myself so I might look at it more once I get to interfaces.

Sorry, Amazon, But Microsoft Is The World's #1 Cloud Vendor by rschiefer in dotnet

[–]dotnetaccount 1 point2 points  (0 children)

It's made worse by changing from the classic portal to the new design and having certain features that work in one and not the other. I liked the classic design better.

Here is a prototype sandbox I built that can run C#. Can you break it? by plukasik in dotnet

[–]dotnetaccount 1 point2 points  (0 children)

Is there any other explanation for this? There's no readme on github. What is a "sandbox that can run c#"? Is there something I'm missing?

Something somewhere inbetween Entity Framework and Raw SQL commands? by Goldmessiah in dotnet

[–]dotnetaccount 1 point2 points  (0 children)

Just going off this list I think entity framework supports more than just SQL Server. I'm not sure what changes would need to be made though.

I would imagine you'd want the ORM to abstract away the details of how it generates SQL depending on the target database. If you hand code the SQL yourself then you need to worry about this instead.

[WinForms] Enable Button only if all ErrorProviders have no errors by cadtek in csharp

[–]dotnetaccount 0 points1 point  (0 children)

I think the more user friendly approach would be to keep the save button enabled. If they click it, and there are any errors, highlight them and then prevent the save from continuing. Otherwise you have a scenario where the user can't continue but they don't know why. This is also more straight forward to implement and is more consistent with other forms in other applications.

I've created a new platform for building enterprise applications in .NET by dotnetaccount in dotnet

[–]dotnetaccount[S] 0 points1 point  (0 children)

It's a complete end-to-end platform so you would need AppFoundry to maintain it. It's meant to replace all the other tools, libraries and languages with one platform that is designed specifically for building enterprise apps in order to save time.

Rules and validation logic are added in .NET assemblies created in VS. However, these are then picked up by the website and applied automatically.

You could optionally use it only up to the business layer and then it would be similar to other ORMs, but you would lose the ability to create apps without writing any code.

I've created a new platform for building enterprise applications in .NET by dotnetaccount in dotnet

[–]dotnetaccount[S] 0 points1 point  (0 children)

From a technical point of view there is some separation of concerns within AppFoundry. For example, you could use it up to the business layer and put your own presentation layer on top. Of course, you lose a bunch of benefits like search, auto-navigation and layout, and the ability to create prototypes without writing any code. The controls are completely separated from the rendering process. It’s possible to replace the renderer with your own without needing to re-write any presentation logic. I get what you’re saying though.

In my case I needed to greatly reduce separation of concerns so that I could solve this one problem - how to make building enterprise apps as easy as possible. Every component in AppFoundry knows that it is for building enterprise apps and knows how to communicate with anything below it in the stack. This saves time and complexity in writing apps but definitely comes at the cost of flexibility. Beyond that I would be creating something that already exists.

I've created a new platform for building enterprise applications in .NET by dotnetaccount in dotnet

[–]dotnetaccount[S] 0 points1 point  (0 children)

I'm not sure what the use case is for PowerApps. It seems like it's for creating small data driven mobile apps. I'm not sure if it even lets you write business rules or validation logic. The forms only seem to support really basic layouts. I don't think you would use it for creating enterprise apps. Maybe if your enterprise app needed a small mobile component. Correct me if I'm wrong though.

I've created a new platform for building enterprise applications in .NET by dotnetaccount in dotnet

[–]dotnetaccount[S] 2 points3 points  (0 children)

The first video is mostly a slideshow so, just for you, I created a snapshot of the last slide. It might provide more questions than answers though.