background preloader


Facebook Twitter

ASP.NET MVC 5 - A .NET Developer Primer for Single-Page Applications. A majority of Microsoft .NET Framework developers have spent most of their professional lives on the server side, coding with C# or Visual Basic .NET when building Web applications. Of course, JavaScript has been used for simple things such as modal windows, validation, AJAX calls and so on. However, JavaScript (client-side code for the most part) has been leveraged as a utility language, and applications were largely driven from the server side. Lately there’s been a huge trend of Web application code migrating from the server side to the client side (browser) to meet users’ expectations for fluid and responsive UX. With this being the case, a lot of .NET developers (especially in the enterprise) are dealing with an extreme amount of anxiety about JavaScript best practices, architecture, unit testing, maintainability and the recent explosion of different kinds of JavaScript libraries.

Creating an SPA in Seven Key Steps Figure 1 ASP.NET MVC Project Structure Figure 14 The Utility Module. Inversion of Control Containers and the Dependency Injection pattern. In the Java community there's been a rush of lightweight containers that help to assemble components from different projects into a cohesive application. Underlying these containers is a common pattern to how they perform the wiring, a concept they refer under the very generic name of "Inversion of Control". In this article I dig into how this pattern works, under the more specific name of "Dependency Injection", and contrast it with the Service Locator alternative.

The choice between them is less important than the principle of separating configuration from use. One of the entertaining things about the enterprise Java world is the huge amount of activity in building alternatives to the mainstream J2EE technologies, much of it happening in open source. A lot of this is a reaction to the heavyweight complexity in the mainstream J2EE world, but much of it is also exploring alternatives and coming up with creative ideas. Components and Services A Naive Example class MovieLister... 10 common traps and mistakes in C# 1) Using the wrong type of collection .Net has a lot of collection classes and they are all specialized on specific tasks. Make sure to select the right one with care. Making the wrong choice can make your code inefficient, have unexpected consequences as well as making your code's intent unclear. Read more here: 2) Not using yield return When enumerating over objects for another caller you should use yield return instead of creating a return collection. 3) Parsing ambiguous dates Be sure to specify a format provider when you parse ambiguous dates.

Var date = DateTime.ParseExact("01/12/2000", "MM/dd/yyyy", null) 4) Rethrowing Exceptions with an exception instance If you want to catch and rethrow an exception, be sure to use the simple throw; syntax. Catch(SomeException ex){ logger.log(ex); throw;} catch(SomeException ex){ logger.log(ex); throw ex;} 5) Accessing virtual members in a constructor Example: I.e.

The following code... Learn to Hack. ASP.NET Core 1.0 Fundamentals. Having the domain model separated from the persistence model - Enterprise Craftsmanship. In this post, I’d like to write about a pretty common discussion in DDD circles: should one have the domain model separated from the persistence model? In other words, should you map your domain objects to the DB tables directly using an ORM or would it be better to use a separate set of Data Access Objects (DAOs) instead?

Should a domain model serve as a persistence model? This question often arises when you try to build a rich domain model while working with a relational data store. To answer it, let’s first look at why one would even consider creating a separate set of DAOs. It’s true that building a rich domain model that adheres to the DDD principles is not an easy task. To make your code base maintainable in the long term, you need to have it separated from all responsibilities other than holding the domain knowledge. It means that all persistence concerns must be extracted out of the domain classes. Creation of separate DAO classes is one of the solutions to this problem. Why? S.O.L.I.D: The First 5 Principles of Object Oriented Design. S.O.L.I.D is an acronym for the first five object-oriented design(OOD) principles by Robert C. Martin, popularly known as Uncle Bob. These principles, when combined together, make it easy for a programmer to develop software that are easy to maintain and extend.

They also make it easy for developers to avoid code smells, easily refactor code, and are also a part of the agile or adaptive software development. Note: this is just a simple “welcome to S.O.L.I.D” article, it simply sheds light on what S.O.L.I.D is. S.O.L.I.D stands for: When expanded the acronyms might seem complicated, but they are pretty simple to grasp.

S – Single-responsiblity principleO – Open-closed principleL – Liskov substitution principleI – Interface segregation principleD – Dependency Inversion Principle Let’s look at each principle individually to understand why S.O.L.I.D can help make us better developers. # Single-responsibility Principle S.R.P for short – this principle states that: # Open-closed Principle # Conclusion. Microservices. "Microservices" - yet another new term on the crowded streets of software architecture. Although our natural inclination is to pass such things by with a contemptuous glance, this bit of terminology describes a style of software systems that we are finding more and more appealing. We've seen many projects use this style in the last few years, and results so far have been positive, so much so that for many of our colleagues this is becoming the default style for building enterprise applications.

Sadly, however, there's not much information that outlines what the microservice style is and how to do it. In short, the microservice architectural style [1] is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. To start explaining the microservice style it's useful to compare it to the monolithic style: a monolithic application built as a single unit. Applying S.O.L.I.D. Principles in .NET/C# The Quiet Crisis unfolding in Software Development. The Quiet Crisis unfolding in Software Development About Me I’ve been working in software development for twenty-eight years. My current position is Senior Development Director at a software consulting company in Austin, Texas, a position I’ve held for just over six years. My progression was originally technical in nature — I started out as an Associate Programmer Analyst fresh out of college.

Back in those days one of my favorite hobbies was making fun of the stupidity of management. The universe employs a cruel kind of karma. In my current position as Senior Development Director there are six Development Managers that report to me. Over the years I’ve given my direct reports and their direct reports the same insights I’m going to share with you now. The reason I’m sharing this is because over the last ten to fifteen years I’ve noticed a quiet crisis unfolding in software development leading to low quality applications, unhappy employees and unhappy users. Be Wary of High Performers. Is your stuff backed up? Recovering from a hardware failure. Mobile Website Speed Testing Tool - Google.


4K Research. Operating Systems. Programming. Testing. ComputerPrograms. Learning Servers. Know Your Network, Lesson 2: Understanding Your Router’s Admin Page. They are unique when they leave the factory, the first 6 characters specify the vendor, the last 6 specify the device, but if you go under the properties of the network adapter there's an option to specify the MAC. It's normally labeled something like Network Address, Physical Address, Locally Administered Address, etc. Wireless adapters are a little harder with Vista/Win7, but there are third-party programs that will do it for you. Routers can do this too, I think every home router I've seen has an option for it. Reason being certain modems, specfically cable modems, look at the MAC address of what they're connected to, which affects how they get DHCP from your service provider.

Say you have a Linksys and a Netgear, or even two of same brand. If you connect one to a modem, then check your public IP (,, etc), then connect the other router and check again, you'll mostly likely have a different IP. What bitrate should I use when encoding my video? How do I optimize my video for the web? What bitrate should I use when encoding my video? How do I optimize my video for the web? Derek Stanley In this article we will go over some recommendations for compressing your videos for delivery through the Amazon S3 servers. A scenario you might be familiar with is that you have filmed and edited your content into a package that meets your needs, but once you go to view your video on your website it takes forever to load or the video stutters during playback.

This problem is not necessarily a bad encoding, but it could be the result of not encoding your video to a targeted connection speed. In an ideal world you would be able to load your uncompressed video directly onto the web and end users would be able to view the file. To reduce the data being pushed through your video you will have to perform a compression using a codec, which was covered in our previous article here: My video has no sound or picture, am I using the right codec? Which Container and Codec Should I Use? 1. 2. 3. 4. How to Open God Mode on Windows 8, 7 & Vista. Devices and Printers - Change Device Icons with Custom Icons. _dk_antec_lanboy_air_7.JPG (520×638) G.Skill F4-2666C16Q2-64GRB DDR4-2666 Memory Kit Review. Remember when we used to expect per-DIMM capacity to double with every new generation of RAM?

Desktop users witnessed the transition from 2GB DDR to 4GB DDR2 and 8GB DDR3. Yet, now that DDR4 is out, we’re still stuck with 8GB modules. Where are the 16GB DDR4 DIMMs? It wasn’t so long ago that DDR3 was limited to 4GB per module. This became strikingly clear when one of my friends, a technician, was asked to upgrade a customer’s LGA 1156-based machines. Even with the latest firmware, none of those boards supported any of his 8GB DIMMs. It wasn’t until LGA 1155 that we saw a platform capable of addressing higher-density parts. Whatever the reason for today's lack of 16GB DIMMs, the only thing a memory vendor can do for enthusiasts who want 64GB right now is to sell a set of eight modules. A bone-stock 1.20V allows these DIMMs to remain cool while tightly packed. The 64GB kit also required 2T timings, whereas we treated the default 2T timings of the four-DIMM sets as a mere suggestion.

Johnny Lucky Solid State Drive Database. ASRock Fatal1ty X99 Professional Motherboard Review | KitGuru - Part 6. March 16th, 2015 at 8:09 am - AuthorLuke Hill We will be outlining the ASRock Fatal1ty X99 Professional motherboard’s performance with the Core i7 5960X CPU at its stock frequency (3.5GHz due to forced turbo). Overclocked performance will be outlined later in the review. The first thing to point out is that we were forced to use Corsair memory as opposed to our tests system’s standard 2666MHz G.Skill Ripjaws4 F4-2666C15Q-16GRR set. We could not get the system to run stably with the G.Skill kit’s XMP configuration (despite the kit being on the QVL), although this is an issue which ASRock knows about. Other memory vendors’ parts seem to be unaffected. Multi-core turbo (MCT) is not applied automatically when XMP is enabled on ASRock’s motherboard. CPU-Z is unable to track the motherboard’s voltages in real-time, so we rely upon ASRock’s own monitoring tool for system voltage readings.

ASRock sneakily applies a higher-than-stock DRAM voltage of around 1.25V. X99 Motherboard Test System: Tests: Anypixel.js.