Vacation

39982a21

I’m offline for the holidays

Posted in Uncategorized | Leave a comment

My 2015 developer and power user tools – update

toolbox by vectorolie / FreeDigitalPhotos.net
Below a list of tools I use today. If you’re like me, you check them out and add the ones you like to your own toolbox.

Image courtesy of vectorolie / FreeDigitalPhotos.net

Environment

Chocolatey, installation automation. I’ve written about it before on my blog. (See posts)
F.lux, it makes the color of your computer’s display adapt to the time of day
7-zip, the new standard in compressing files
DropBox, file share/sync between computers and the internet
Chrome, best browser today
AdBlock for Chrome, blocks adds in chrome

Productivity

TimeManage.me, my pomodoro app
Powershell, the automation solution from microsoft
RescueTime, background logging of where you spend your time
Wunderlist, task list on every platform
Wunderlist parser, convert a plain list of items into wunderlist items
IFTTT, automate the internet
Trello, collaboration tool that uses boards and cards. I’ve written some small automation scripts for my uses. (Post)
Pocket, my preferred read later list, available on all platforms
Evernote, remember everything. I use it for my GTD technique called The secret weapon.
1Password, my password is CTRL + \
Autohotkey, run macro’s on keyboard shortcuts like CTRL+ALT+5 types €

Development

Visual Studio 2015, the best IDE out there
NuGet, source of all the good in the world
Visual Studio Gallery, extend visual studio
Ghostdoc, CTRL+SHIFT+D to comment your code, that simple
Specflow, cucumber for .net for behavior driven development (BDD)
Just Decompile, see the code of .net assemblies
Fiddler, log http calls via this proxy
Wireshark, deep logging of network traffice
SourceTree, my preferred git tool with advanced branching support
Notepad++, notepad on steroids
BrowserStack, test webpages on any platform, live or automated
Selenium, webbrowser automation, also runs on browserstack
smtp4dev, development smtp server
Sqlite studio, manage Sqlite files
Azure Storage Explorer, browse and manage Azure Storage
Snoop WPF, spy on WPF

Misc

ZoomIt, I use this in all my demos to zoom
Bit.ly, url shortener service
windirstat, see what is hogging your hard disk space
prey, install and forget, until you need it
Gifcam, screen recorder with animated gif support
Notebook fancontrol, see processor temperature and set the fan speed

Mac

Cyberduck, connect to anything
DaisyDisk, see what is hogging your hard disk space
SafeCopyBackup, automated cloud backup
Type2phone, make my mac a Bluetooth keyboard for iPad or AppleTV
Handbrake, convert movies
1Password, my password is ⌘ + \
Little snitch, monitor network traffic coming from your mac
HyperDock, preview windows from the dock
Alfred, spotlight replacement with lots of options
Parallels, the virtualisation solution for mac
Sublime Text, very complete text editor for code

iPhone/iPad

Tweetbot, easy twitter client with pocket integration
Workflow, automate tasks, like send ETA and navigate home
CloudMagic, handles my e-mail and offers tasks like send to evernote or pocket
Pocket, I do my reading mostly on iPhone or iPad
Duet, use your iPad as an extra screen
Lightningtalktimer, timer app that changes appearance with time passed

Some of the tools cost money, some are free, some offer paid options. If it saves you time or improves your work, why not support the developer that made it possible?

Posted in Tooling | Tagged | 2 Comments

Week roundup

Last week recap and links:
Image courtesy of kanate / FreeDigitalPhotos.net

Image courtesy of kanate / FreeDigitalPhotos.net

What are your best reads this week? Leave them in the comments below.

Posted in Uncategorized | Tagged , , , | Leave a comment

CypherNet fork

GithubRecently I was asked to help with a Proof-of-concept for graph databases. The database in question was neo4j and it uses cypher as the query language. Some say it is like SQL, some say it’s not even close. My part in the POC was to create a REST api to hide the complexity of getting information out of the graph.

Neo4j offers a REST api. This eliminates the need for a driver and makes the database easier to integrate. The REST api expects a payload with cypher statements to execute and returns the result. Mark Tranter already created a github project and published a nuget. I’m going to use that.

The cyphernet implementation is from 2014 and stil works. Some people posted pull requests, like for adding credentials (now authentication must be turned off) I was looking for a way to execute Regular Expression where statements.

I created a CypherNet fork repository on github and added the Regular Expression implementation used for the POC. My first fork, I’m still learning.

Posted in Development | Tagged | 1 Comment

Performance tuning EF, ASP.NET and loadtest

Web-Services-IconWe are developing webservices for accessing data in SQL Server. The performance requirement was not met until we started to tune our solution.

TLDR: use table in stead of view

EF

First we added the AsNoTracking() extension from EntityFramework to the DbContext virtual properties. This informs EF to just read the data and not track any changes. Since we’re only using the data read-only we have no need for change tracking. Speed improvement quick-win.

async-await

Next is the loadtest in Visual Studio. The Constant Load Pattern is set to 1. This means 1 thread doing all the requests. But we’ve created an ‘async’ webservice that ‘awaits’ the data from the database. Setting the number to 4 improved the requests/second by just a little.

Then we noticed the huge speed increase when requesting the same id for the second time. This happend when the number of requests exceeded the list of unique id’s and started over with already requested id’s. Is this caching of information in SQL Server?

Table in stead of view

Last change is in the database. Even with an indexed View the data is read slowly until it is requested the second time (and probably cached). We moved to a table with the same data as the view. This made the performance on par. (200+ page/s)

References

Performance Considerations for EF 4, 5 and 6 on msn
Tips to improve Entity Framework Performanc on dotnet-tricks

Posted in Development | Tagged , , , , , , | Leave a comment