I’m going to experiment with this. Most likely the quality of the code samples will be the biggest factor in like/dislike result.
–jeroen
Posted by jpluimers on 2015/04/02
I’m going to experiment with this. Most likely the quality of the code samples will be the biggest factor in like/dislike result.
–jeroen
Posted in .NET, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development, Visual Studio 2010, Visual Studio 2013, Visual Studio 2014, Visual Studio and tools | 1 Comment »
Posted by jpluimers on 2015/04/01
A lot of the stuff on the Embarcadero docwiki hurts. For instance most of the REST stuff (I’m not calling it documentation) is just generated scaffolding. Like REST.Json.TJson.
But the TRESTResponseDataSetAdapter has some amazing documenation. About TComponent that is:
TComponent is the common ancestor of all component classes.
TComponent is the base class for all components. Components are persistent objects that have the following capabilities:
IDE integration. The ability to appear on an IDE palette and be manipulated in a Form Designer.
Ownership. The ability to manage other components. If component A owns component B, then A is responsible for destroying B when A is destroyed.
Streaming and filing. Enhancements of the persistence features inherited from TPersistent.
…
To assist the doc team: this is a query for all pages containing “TComponent is the common ancestor of all component classes.”. Feel free to [WayBack] QC or QP it.
–jeroen
via: REST.Response.Adapter.TRESTResponseDataSetAdapter – RAD Studio API Documentation.
Posted in Delphi, Development, Fun, QC, Software Development | 2 Comments »
Posted by jpluimers on 2015/03/30
For anyone keeping up with Pascal history, these uploads are new:
–jeroen
via: Index of /pdf/pascalNews.
Posted in Apple Pascal, BitSavers.org, DEC Pascal, Delphi, Development, History, IBM Pascal, Pascal, Software Development, Standard Pascal, Turbo Pascal, UCSD Pascal | Leave a Comment »
Posted by jpluimers on 2015/03/28
Look ma: no mouse! DanielRapp/doppler. Detecting motion with your built-in computer speakers and microphone using the Doppler effect.
Cool!
–jeroen
Posted in Algorithms, Development, Software Development | Leave a Comment »
Posted by jpluimers on 2015/03/28
New Delphi related RSS feed: Delphi Pipe “A collection of Delphi related RSS streams” which works perfectly fine in Feedly.
You can get the source through http://pipes.yahoo.com/delphipipe/thepipe
The source is sooo simple, that I now definitely need to make some time to really do some Yahoo Pipes research:
Since Delphi Feeds doesn’t list my blog any more and generally isn’t very fast in responding to requests for adding or removing feeds, I have created my own aggregated feed: Delphi Pipe. It’s done with Yahoo Pipes and currently contains the following feeds (most important first ;-) ):
Oh and thanks Thomas Mueller for listing my feed second (;
Later he showed how easy it is to convert your G+ stream to an RSS feed: Using Google+ as input for Yahoo Pipes.
Then how to read a CSV file (which is hosted on his site) as input to the RSS generation.
–jeroen
via: Delphi Pipe » twm’s blog.
Posted in Delphi, Development, Software Development | 8 Comments »
Posted by jpluimers on 2015/03/26
Next time I run into .NET and native threading issues:
Main UI threads often have a correlation between managed and native thread IDs.
But for other threads, you cannot be really sure.
Some background articles on this:
–jeroen
Posted in .NET, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development | Leave a Comment »
Posted by jpluimers on 2015/03/25
Reminder to Self (this?) put a LICENSE .txt or LICENSE.md file in all my repos.
It isn’t difficult to choose one:
For new repositories, GitHub even has a license picker.
Thanks Jan Wildeboer for reminding me.
–jeroen
PS: most of the things I put on-line are using a BSD 3-clause “New” or “Revised” License. But I might go for a simpler one. It doesn’t hurt looking at your licenses every now and then.
Posted in Development, Licensing, Software Development | Leave a Comment »
Posted by jpluimers on 2015/03/24
Paul Thornton posted a nice question on G+ two weeks ago:
Interfaces are great, but they can be a pain to debug. Forgetting one weak link can lead to Access Violation hell. I seem to remember a utility that would let you visualise the links between interfaced objects, but can’t remember what it was called. Anybody know?
Do you have any clever interface debugging tips or tricks?
Mixing object and interface references leads to complex situations, especially when some classes make refcounting go away (not limited to UI components) so refactoring is a good idea, it at all possible:
Refactor them away :-)
When the mix of interface reference counting and TObject gets so complex, that the source code is no longer obvious, maintenance costs sometimes become too high and another solution might be better.
+Lars Dybdahl Totally agree and it is even worse when reference counting is disabled (like adding an interface reference to an UI component).
There is not much tooling, this thread only mentioned RefCountTracer and FastMM:
There is this: https://github.com/AquaSoftGmbH/RefCountTracer
It helps you find memoryleaks, but also could show you if a refcount goes below 0.
This link was very useful. It also points to a good FastMM tutorial.
Which reminded me I totally forgot to post that tutorial on my blog so here it is:
Posted in Delphi, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 7, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Development, Software Development | 2 Comments »
Posted by jpluimers on 2015/03/19
IlMerge is a great way to merge multiple .NET assemblies into one, and I use it most often to combine assemblies with console applications so I end up with one executable..
However getting the latest version always was a hassle as the ilmerge download link was unclear about the version number.
Until I found out that IlMerge is on NuGet.
To get started with NuGet, either download the NuGet GUI or command-line version, then use either of these entry points to work with NuGet packages:
nuget install ilmergeInstall-Package ilmergeThere is much more to the Package Manager Console and the Package Manager Dialog.
–jeroen
Posted in .NET, .NET 4.0, .NET 4.5, Development, Software Development, Visual Studio 11, Visual Studio 2010, Visual Studio and tools | Leave a Comment »
Posted by jpluimers on 2015/03/18
Thanks David Millington for pointing me to How to move your Google Code project to GitHub.
A small quote from it:
By the end of this article, you will have:
- Moved the repository, including commit history, from the Google Code project to a new GitHub project
- Updated the Google Code project to redirect to the new project location
- Updated the Google Code repository so users updating will find out they need to use the new project location
- Set up some basic project settings in your new GitHub project.
–jeroen
Posted in Development, DVCS - Distributed Version Control, GitHub, Google, GoogleCode, Power User, Software Development, Source Code Management | Leave a Comment »