First Post

Monday 31 October 2016

4183 0

Well, hello! This is my first post, exciting. I've often blogged on different communities before and I have always wanted a personal website. But procrastination is a bitch, so I didn't find the time to launch a blog and keep it up. On the other hand I wanted a blog engine I have written myself. For various reasons, I wanted to build a web app myself, learn and tinker with the project, and have a live demo of my work. So I was mostly interested in writing a ASP.NET web app and build my own website. I was working full time at the time, so this project had to be scheduled in leisure time. Any chance I got, I spent time working on the website. It took a long time, nearly 2 years to get here. But many good features have been implemented along the way, I have upgraded or replaced entire parts of the project many times and it is still a work in progress. Of course if I had the time to work on this project full time, I would've reached this release much sooner. But I'm okay with that, I took my time and learned a lot of different things.  I'm quite pleased with the result so far, and of course many fixes and upgrades are schedule to follow soon. You will notice UI changes, new features or re-designs in the coming weeks but the building blocks are in place and most of the website will remain the same.

What Will I Be Writing About

This website is intended to be my online portfolio, so my blog is mostly a technical blog. I'll be blogging about .NET, Web Technologies, Databases, Design Patterns and Architectural Styles, Code Quality, Testing, Plugins and Tools, I could go all night, you get the gist. Of course I'll post different kinds of material as time goes by, add and improve features and designs, create new sections like Projects or Portfolio and so on. So tune in, much will change and new stuff are coming soon, I'll try my best to add valuable content each day, or at least several days a week.

You might have noticed that this website is localized, it is available in two languages: English and Persian. Public facing pages like About, Contact, Hire etc. show the same data and are localized only on the UI. But dynamic views like Blog related pages show localized data. English content is completely separate from Persian content. All posts, categories, tags, comments etc. are separated by culture. So if you speak both languages, make sure to visit both versions as the content differs on each culture.


You can find what you're looking for in different ways:

  • The Blog page
  • The Archives page
  • The Sidebar panel

You'll find various views in the Archives page:

  • Posts grouped by Date
  • Posts grouped by Category
  • And the Tag Cloud

The Sidebar panel is visible in all blog related pages: Blog index, Post details page, Categories, Tags and Archives. When you are on one of these pages, an additional navigation menu is accessible named Sidebar, which has a toggle icon. You can toggle/collapse the sidebar if you wish, but its state is not stored in a cookie or anything.

You can also search through entries at the top of the Sidebar. Just type your keywords and press return.

You'll also find various RSS Feeds:

  • Recent Posts
  • Recent Comments
  • Posts by Category
  • Posts by Tag

The feeds are in rss/atom format so you should be able to subscribe easily.

Daily Links

I will share useful links and resources under the Daily Links archive. It's a simple bookmark table for links. Each link has a URL (duh), a Title and an optional Note. You can find these links on the blog sidebar or on its own page. Headers in the sidebar panel are linked to their individual pages.

How To Reach Me

You can send me a message through the Contact page. If you have a job offer or want to inquire about  how I work and the value I can bring to your project, drop me a message on the Hire me page. I'm always available via e-mail too. You will also find links to my social profiles like Facebook, Twitter, LinkedIn, StackOverflow etc.

Upcoming Posts

I'll start by importing all my old articles, then I'll be blogging about a range of topics. I'm primarily focused on the .NET Platform and Web Technologies. My website is running on ASP.NET 4.x so I'll be sharing lots of different goodies I've learned while working on this project. The solution is named iNexus, a simple yet powerful blog engine and website which might become an open-source project in the near future. I'll blog about its features, architecture and design, plugins and libraries in use etc. I'll write about SPA frameworks like Angular and Ember, Mobile development with Ionic, Cordova and Xamarin. We'll examine all kinds of things from design, to implementation and maintenance. I will also write series of tutorials, in which we'll build sample applications from scratch, from back-end to front-end and deployment.

Currently, I'm focused on (obviously) my website, .NETCore, REST APIs, Angular 2, Ionic 2 and TypeScript.  I have extensive knowledge and experience on the .NET Framework and Web technologies, I've built desktop apps, WPF applications, Web apps and clients,  so I have much to write about and organize on my website. I'm sure you'll find useful and interesting stuff.


NOTE there's still a lot left to be done on this website. There's some features to be wrapped up, refactoring and improvements etc. The overall performance, accessibility and SEO score is reasonable. Something between 75 to 85 based on different analyzers and services. I'll definitely improve the SEO score in the coming days, structured data is your friend!

A Quick Word About Using This Website

Posting Comments, Contact messages and Hire me messages require you to complete a Google Re-Captcha challenge.

You can use emojis in your messages. I use them in my posts too :boar: :wine_glass:. To fire the intellisense type a colon followed by the emoji name. So for instance if you want to insert a smile emoji, you would write:


You can see this in action in the following image.

As you see, code snippets are highlighted (with prism.js). And finally, markdown is enabled on message inputs. There's a simple toolbar, a preview button and a full-screen mode. HTML will not be parsed, however. Also hyperlinks have a favicon next to them, and all images are turned into a fancy lightbox, for eye candy :candy:.

Great! :eyes:‍ now you know what this website is about, and how to use it. As I have mentioned, this is still a work in progress so you might run into bugs or even worse run-time errors. If you do, sorry for the inconvenience but be sure that I'll fix them as soon as possible. If you could report such issues through e-mail or the Contact page, it would be much appreciated!

About Old Posts

Some posts that have been published before on different web sites such as .NETTips, have been imported by hand, or will be imported. Publish dates are different, but the view counts have been imported.

Until the next post, and the next release :full_moon_with_face:


I'm a senior software developer focused on the Microsoft.NET Platform and Web Technologies. I provide consultation services and teach short courses and workshops. When not coding, you can find me hiking, playing the guitar and video games, surfing YouTube and enjoying good reads. You can always reach me on the Contact page. Have a project or job offer you'd like to discuss? Ping me on the Hire Me page. If you've found this post helpful, be social, sharing is caring.

Source: /en/blog/1/first-post/