Brian Ritchie's Weblog :

 

Posts

Web Services Enhancements for .NET have been released
http://msdn.microsoft.com/webservices/building/wse/default.aspx

Functionality is based on the WS-Security, WS-Routing, WS-Attachments and DIME specifications.

 

From Daniel (fellow Mono ADO.NET hacker)...

IBM Supports DB2 on unixODBC
http://www-1.ibm.com/support/docview.wss?uid=swg21079056

Delphi.NET runs on Mono!!
http://lists.ximian.com/archives/public/mono-list/2002-December/003896.html

Code generated by Delphi.NET runs on Linux using the Mono platform.

A couple of interesting weblogs...

John Lam's Software Development Weblog
http://www.iunknown.com/

Ingo Rammer's DotNetCentric
http://www.dotnetremoting.cc/DotNetCentric/

IK.VM.NET -  Java VM for .NET
http://radio.weblogs.com/0109845/

FAQ
http://radio.weblogs.com/0109845/stories/2002/11/13/faq.html

Port of Java Fractual Generator

Adam Treat - the port is much faster and more responsive than the Java/Swing version
http://lists.ximian.com/archives/public/mono-list/2002-November/003597.html

Tarball of C# source
http://qtcsharp.sourceforge.net/qfractals.tar.gz

From the Mono News Department...

Openlink Uses Mono to Enable Cross Platform Integration of .NET
http://www.ximian.com/about_us/press_center/press_releases/index.html?pr=openlink_mono

Mono Tutorial
http://mwh.sysrq.dk/the_mono_tutorial

Mono Binaries
http://www.gnome-db.org/~gonzalo/mono/

Mono Hackers Worldwide (map
http://www.gnome-db.org/~gonzalo/mono/monomap.php

Various Good Stuff

FAM, the File Alteration Monitor (unix)
http://oss.sgi.com/projects/fam/

POSIX Reference
http://www.perl.com/doc/manual/html/lib/POSIX.html

Npgsql - Managed Provider for PostgreSQL
http://gborg.postgresql.org/project/npgsql/projdisplay.php

Free Software for your Office

MrProject - Project Management
http://www.codefactory.se/products/mrproject.php

OpenOffice
http://www.openoffice.org

Languages & Scripting for .NET & Java

Oberon.NET (Pascal like Language)
http://www.oberon.ethz.ch/oberon.net/

P#, a Prolog for .NET (written in C#)
http://www.dcs.ed.ac.uk/home/jjc/psharp/psharp-1.1/dlpsharp.html

BeanShell for Java (scripting)
http://www.beanshell.org/

DotNet Script Host
http://www.toolsack.com/products/dotnetscripthost/

Luna - Scheme compiler and run time environment for .NET
http://sourceforge.net/projects/luna-scheme/

.NET ONE 2002 Presentations

Slides from .NET ONE
http://www.sigs.de/download/dotnet_02/index.htm

Hosting the Mono Runtime (Paolo Molaro)
http://primates.ximian.com/~lupus/slides/embed/

The quick hack Paolo Molaro put together to embed the mono runtime in a Perl module so you can
call simple methods in an assembly from Perl is at:
http://primates.ximian.com/~lupus/slides/embed/Mono-0.01.tar.gz 

The Mono JIT Compiler (Paolo Molaro)
http://primates.ximian.com/~lupus/slides/jit/

Slides from Miguel's European trip
http://primates.ximian.com/~miguel/slides-europe-nov-2002

A few interesting ADO.NET related links

A reusable, flexible SQL architecture tackles JDBC programming inefficiencies
http://www.javaworld.com/javaworld/jw-05-2002/jw-0524-sql.html

IDataReader Process Snapshot Sample
http://www.develop.com/devresources/resourcedetail.aspx?type=t&id=843

Avoid the Boxing Penalty When You Use the DataReader in Visual C# .NET
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q312855

Data Access Block from Microsoft
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp

Data Object Generation
http://www.myelin.co.nz/dbwrappers/


New C# Language Features

From Arild Fines" arild.fines@broadpark.no (via mono-list):

New From http://zdnet.com.com/2100-1104-965046.html :
That release of Visual C# will include four new features: support for "generics," which is a form of a C++ template that can help C# developers build software more quickly; support for "iterators," which help developers create new code; anonymous methods, which ease development of what’s known as "event-driven" code; and support for "partial types," which make it easier to use C# for building large projects. 

From Miguel de Icaza miguel@ximian.com (via mono-list):

Very interesting site with technical details about the future of C#:
http://www.gotdotnet.com/team/csharp/learn/Future/

Working with MP3s

Reading ID3 tags in C
http://id3lib.sourceforge.net/

Playing MP3s

From Pokey the Penguin pokey@linuxmail.org (via mono-list):
The best way to do this is using GStreamer#.  Instructions and an example are
up at http://www.atoker.com/mmp/  although the bindings are still a little rough
around the edges.

Borland thinks Mono for open source .NET challenge
 
The next planned release of Borland Software Corp's Kylix cross-platform development suite could
bring Microsoft-style web services to Linux, helping consolidate the product's early market lead, writes Gavin Clarke.

Firebird Relational Database

Firebird is a commercially independent project of C and C++ programmers, technical advisors and supporters developing and
enhancing a multi-platform relational database management system based on the source code released by Inprise Corp
(now known as Borland Software Corp) under the InterBase Public License v.1.0 on 25 July, 2000.

Firebird ADO.NET Data Provider
The first release (Alpha) of the new Firebird MS .Net Data Provider module is now available for
download. The new data provider/driver is written in C# and provides a high-performance native
implementation of the GDS32/API functions.

OpenGL

Lloyd Dupont and crew have a C# implementation, but I'm not sure if it runs on Mono yet.
http://csgl.sourceforge.net/index.html

Angel Machin García has a couple of cool graphic simulation apps using the library.
http://www21.brinkster.com/trapalas/

.NET Monitor

Manage your server via web. Such as Kill Processes, Start/Stop Services, View Event Logs and Reboot Server.
http://www.suratsoftware.com/features.aspx

 

DB2 Access on Linux using C++
  
ODBC and the unixODBC Project
http://www.unixodbc.org/
DB2- The libdb2.so library that is part of DB Connect functions as a ODBC
Driver
 
iSeries ODBC Driver for Linux
http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/
 
DB2 Connect Quick Beginnings for Linux
http://www-3.ibm.com/cgi-bin/db2www/data/db2/udb/winos2unix/support/document.d2w/report?fn=db2v7c4db2c446.htm

 
DB2 Access on Linux using C#

Mono ADO.NET, System.Data.OleDb namespace
http://www.go-mono.org/ado-net.html
Executed first query August 23 2002
http://www.go-mono.org/

Miguel de Icaza Demonstrates Mono Project Success at O'Reilly Open Source Convention Demonstrated how Mono developers can utilize ADO.NET to build more comprehensive Mono solutions.
http://www.ximian.com/about_us/press_center/press_releases/index.html?pr=mono_oscon
 
GDA C# bindings, released September 2002
http://www.gnome-db.org/news.php#20020901

  MySQL .NET Managed Provider

Derby found a great link.  dbProvider is the managed .NET provider to the MySQLTM database. Delivering high performance, solid reliability, and a natural interface to .NET, dbProvider is the best way to access MySQLTM from .NET!

http://www.einfodesigns.com/products.aspx

6/3/2002  
  Embedding Resources

Here is a neat trick to embed any kind of file in a dll and read it out at run-time.


In this case, I'm embedding an XSLT file that my DLL needs. Here's how:

1. Add the file you want to embed to the project

2. Set the "Build Action" on the file to "Embedded Resource"

3. Add the following code:

System.IO.StreamReader ResReader=

new System.IO.StreamReader(
   
typeof(Payformance.Web.UI.Page).Assembly.GetManifestResourceStream
       ("NPSCustomWebControls.MenuTransform.xslt"));

string Xslt=ResReader.ReadToEnd();

4. Make a couple of changes:

  • Replace Payformance.Web.UI.Page with a class in your dll.
  • Replace
NPSCustomWebControls.MenuTransform.xslt with ProjectName.Filename. In this case NPSCustomWebControls was my project, and MenuTransform.xslt was the embedded file.

That's it! Now you don't need to pack around a bunch of extra files with your app.

6/3/2002  
  Getting along with CORBA...

2-Way SOAP to CORBA Bridge
VBOrb - ORB written in VB

Other CORBA info...

6/1/2002  
  Open Source CLi/C# Update

Intel is getting in on the Open Source game...they're working on an open source CLI/C#
http://sourceforge.net/projects/ocl/


There's also:

mono: http://go-mono.net
DotGNU: http://dotgnu.org

5/24/2002

 
  .NET Meets Grid Computing
Philippine researchers last fall created what they say is the first generic system for Grid computing that uses an industry-standard Web service infrastructure, according to a paper to be presented at the Second IEEE International Symposium on Cluster Computing and the Grid in Berlin, Germany next week.

http://www.gridcomputingplanet.com/features/article/0,,3291_1140791,00.html

5/24/2002  
  From the "Its not just about web applications" department...

The Magic Library - UI Library for C#
Today's user is familiar with using Microsoft Word or Outlook and expects a rich user interface that you just cannot build with out-of-the-box controls.  The Magic Library aims to solve this by providing user interface elements that add the extra sophistication expected of modern Windows applications.

http://www.dotnetmagic.com/

5/15/2002  
  Gordie does Graphics

Cool graphics and physics demos and home to the Venom Engine...
http://gordie.go.dyndns.org/

5/14/2002  

How to prevent client-side caching?

<% Response.CacheControl = "no-cache"
                                                                                        %> <% Response.AddHeader "Pragma", "no-cache" %> <% Response.Expires =
                                                                                        -1 %>
More Information: http://support.microsoft.com/default.aspx?scid=kb;EN-US;q234067

5/14/2002

How WebTrends Live Works

On the home page of a site monitored by web trends is an image. 
 

This image is actually a dynamic ASP page with its URL encoded with the data about the page: site name, referrer, user agent, language, etc.  An example is on the Got Milk? site: http://www.gotmilk.com/index.html  Just do a view source and check it out.

5/14/2002

HTTP Handlers and HTTP Modules

Http handlers/modules are great ways to jack into the 

5/13/2002

Hosting Sites

Sites suggested by dotnet list @ 15seconds.com: (quotes are from people on the list)

You'll never be sorry if you use ASPwebhosting.com - they host my sites - their support expertise is fantastic - I finally found a host that knows what I need and I actually get it.
  • http://www.hostway.com
  • http://www.bitshop.com
  • http://www.webhost4life.com
    Moved my sites there couple of months ago. I'm very happy with them so far, tech support is great. And you can't beat the price. Their Premium Plan allows custom COM components.
  • http://innerhost.com
    I'm a VERY big fan of innerhost.com and I swear I've been to every other big host in the world. The sales team is great and tech support is superb though I've seldom had to use it for any other the 15 domains we have there at the moment.
  • 5/13/2002
    .NET Links of the Day

    Regular Expression Generator

    ViewState Decoder & Sample Bar graph control w/designer
    Assembly Statistics Utility
    Other cool stuff from developMentor
    .NET CollectionGen

    5/9/2002
      Gordie on the scripting tip

    Very nice set of reviewed, maintained C++ libraries
    http://www.boost.org/

    Here's the Boost::Python module
    http://www.boost.org/libs/python/doc/index.html

    5/7/2002  

    C# Tip of the Day

    You can use the following to generate compiler warnings:

    #warning

    warning message

    For example, you might want to mark some debug code or temporary code that needs to be removed later. The warning message will show up in your compiler messages during a build.

    5/6/2002

    Quote of the Day

    How do you feel about C#? It's strengths? Its weaknesses?

    According to Larry Tesler's law of Conservation of Complexity, you can not reduce the complexity of a given task beyond a certain point. Once you've reached that point, you can only shift the burden around. This rule holds especially true for programming languages. Programming languages are about as simple as they're going to get and still be usable in terms of creating professional applications that meet the needs of today's users. However, what the designers of C# did was to move much of the complexity of writing code from the client (class consumers) to the server (classes). Examples of this are operator overloading, interfaces, delegates, indexers, properties and user-defined conversions. The common thread that ties all these features together is that they all make client code easier and more intuitive to write. However, they also put more of a burden on the class writer. In my humble opinion this is a great design since, if you're writing your object-oriented code "correctly", the client code will constitute the majority of your code. Therefore, my answers are that Yes, I truly enjoy the design of C# and yes it will make you a more productive programmer overall.

    Interesting perspective from Tom Archer...ex-site admin for CodeGuru.
    Full interview... http://www.codeproject.com/interview/tomarcher3jun2001.asp

    5/3/2002

    News from the .NET

    http://www.dotnetwire.com/

    5/3/2002

    Its not just about web applications...

    Kicked-Up Windows UI Library for C# including VS-style docking windows, tab control, and menus
    http://www.crownwood.net/index.html

    5/3/2002

    IE Only...but still cool

    Now you can easily add the ability to edit formatted text to your ASP.NET web site. By using the RichTextBox server control your site visitors have access to a full-featured text editor that has bold, italic, underlining, bullets, styles, font formatting, image insertion, hyperlinks, and a whole lot more.
    http://www.richtextbox.com

    5/2/2002

    Kick Ass Code of The Day

    After starting to write my own...I found a great implementation of a Visual Studio.NET solution to NAnt coverter.
    http://injektilo.org/

    He's also got a C# RDF Framework implementation.

    5/2/2002

    Must have .NET Open Source tools...

    NAnt is a free .NET build tool. In theory it is kind of like make without make's wrinkles. In practice it's a lot like Ant.
    http://nant.sourceforge.net

    NDoc merges the assemblies and XML documentation files produced by csc.exe and creates a compiled HTML Help file enabling you to browse your own libraries.
    http://ndoc.sourceforge.net/

    NUnit is a simple framework to write repeatable tests in any .Net language.
    http://nunit.sourceforge.net/

    5/2/2002

    From the Free is Good Department...

    SharpDevelop
    After a longer than usual wait, we are very excited to bring you a new version of #develop. Some major features were added or vastly improved:

    • Code Completion for C#
    • Class Scout for C#
    • #Unit (much improved Unit Testing framework)
    • Regular Expression search
    • New Add References dialog
    • Support for Unix and Macintosh file saving

    Take the feature tour!
    http://www.icsharpcode.net/OpenSource/SD/Tour/default.asp

    5/2/2002

    Another donation from the Gordy Institute...

    Ganglia provides a complete real-time monitoring and execution environment that is in use by hundreds of universities, private and government laboratories and commercial cluster implementors around the world.

    http://ganglia.sourceforge.net/

    5/1/2002
    SQL 2000 Federated Databases

    Thanks to Dave's readings on Federated Databases...I did a little research. 
    Here are a number of links and quotes...enjoy!  While they can't be used
    everywhere, Federated Databases could give us speed/scalability increases
    for portions of NPS2.

    Federated Database Support
    Federated database support, which lets you use SQL Server 2000's distributed
    partitioned views to horizontally partition tables across multiple servers,
    enabled SQL Server 2000 to set its new Transaction Processing Performance
    Council (TPC) TPC-C benchmark of 262,243 transactions per minute (tpmC) with
    12 clustered Compaq systems.
    http://www.sqlmag.com/Articles/Index.cfm?ArticleID=9797


    SQL Server Is Tops
    Table partitioning occurs horizontally across multiple servers, creating
    many smaller tables called member tables. Each member table has the same
    schema and its own subset of rows. You manually place each table on a
    separate SQL Server system to divide the processing load across the systems.
    A distributed partitioned view lets all the member tables appear to the
    application as one table.
    http://www.sqlmag.com/Articles/Index.cfm?ArticleID=8541


    Federated Databases and Flying Pink Elephants
    Microsoft's recent TPC-C scores on a single 8-CPU SMP node hover in the
    mid-40,000 tpmC range, which is more than 12 million OLTP transactions per
    day. Many organizations (small and large) will justify SQL Server deployment
    based on the mere existence of federated database technology, which will
    boost the overall adoption of SQL Server in the enterprise. Although we may
    never need to build a federated database, it's nice to know we can scale
    that high if flying pink elephants from outer space ever attack
    http://www.win2000mag.com/Articles/Index.cfm?ArticleID=8272


    New Result Shows SQL Server 2000 Offers Scale-Up, Scale-Out Capabilities
    Needed by Enterprise Customers and E-commerce Companies.  Delivering More
    Performance than Oracle-Sun at Lower Cost
    http://www.microsoft.com/presspass/features/2000/jul00/07-27sql.asp


    SQL Server 2000 Federated Database
    Performance Tuning and Optimization Tips
    http://www.sql-server-performance.com/federated_databases.asp


    SQL Server 2000: New Features Provide Unmatched Ease of Use and Scalability
    to Admins and Users
    * Indexed Views and other Index Enhancements
    * Distributed Partitioned Views (For Federated Databases)
    http://msdn.microsoft.com/msdnmag/issues/0800/sql2000/sql2000.asp


    Evaluation of Federated Database Servers and Distributed Partitioned Views
    of SQL Server 2000
    http://vyaskn.tripod.com/federated.htm


    Osborne/MCDBA Planning a Microsoft SQL Server 2000 Implementation
    http://www.osborne.com/certification_career/0072127031/0072127031_ch01.pdf


    COMPAQ/Building Scale-Out Apps with SQL Server 2000
    http://www.compaq.com/emea/presalessupport/sessions2001/RA1.ppt


    DELL/Building High-Performance Data Centers
    Microsoft has implemented the Virtual Interface (VI) Architecture standard
    and support for Giganet VI-based networks within SQL Server 2000 Enterprise
    Edition (EE). Key to Microsoft's scale-out strategy is distributed
    partitioned views, complemented by the performance achieved through the
    support of VI.
    http://www.dell.com/us/en/biz/topics/power_ps3q00-giganet.htm


    Oracle White Paper/Database Architecture: Federated vs. Clustered
    Just to keep things fair and balanced
    http://technet.oracle.com/deploy/performance/pdf/FederatedvsClustered.pdf


    A Decision More Difficult Than the Presidency
    SQL v. Oracle: How do you decide?
    *Cost: An Oracle shop needed to purchase licenses for several thousand
    users. They asked Oracle for pricing on the licenses and were told that it
    would cost them several million dollars. Not only was SQL Server 2000
    cheaper, the price quoted was less than 10 percent of what Oracle wanted to
    charge them.
    *Data Partitioning: Microsoft Leaps Ahead
    This is why SQL Server 2000 won the TPC-C benchmark mentioned earlier - many
    machines can work to satisfy the same query, thereby increasing the raw
    processing power available.
    http://certcities.com/certs/oracle/columns/story.asp?EditorialsID=23

    5/1/2002
    My running list of interesting links...

    Web Services FAQ
    http://www.wintellect.com/resources/faqs/default.asp?faq_id=3

    Code Swap (VS Plugin)
    http://www.vscodeswap.com/default.asp

    ODBC .NET Data Provider
    http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/MSDN-FILES/027/001/872/msdncompositedoc.xml

    .NET GZip/Zip Lib
    http://www.icsharpcode.net/OpenSource/NZipLib/default.asp


    .NET (Open Source)
    A couple of open source implementations of .NET (still in the works)
    MONO
    http://www.go-mono.com/
    http://mail.gnome.org/archives/gnome-hackers/2002-February/msg00031.html
    Portable.NET
    http://www.southern-storm.com.au/portable_net.html
    http://slashdot.org/articles/01/12/26/1433250.shtml


    SQL2K


    Microsoft SQL Server 2000 Web Services Toolkit
    http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/MSDN-FILES/027/001/872/msdncompositedoc.xml

    SQLXML 3.0 RTM
    http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/MSDN-FILES/027/001/872/msdncompositedoc.xml

    SQLXML.org
    http://sqlxml.org/sqlxml/v3.1/home.xml?browser=ie


    UDDI
    http://www.microsoft.com/downloads/release.asp?ReleaseID=30880
    http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28001204
    http://msdn.microsoft.com/code/default.asp?URL=/code/sample.asp?url=/MSDN-FILES/026/002/677/msdncompositedoc.xml

    Browser-based UDDI Client
    http://www.soapclient.com/uddisearch.html

    SOAP


    Microsoft SOAP Toolkit 2.0 SP2
    http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/001/580/msdncompositedoc.xml

    XMethods Interfaces (SOAP/UDDI/WS-Inspection/DISCO/RSS)
    http://www.xmethods.com/ve2/Interfaces.po;jsessionid=YRbH6y1Q2I7WysjYhgGZZwbz(QCcd0CRM)

    WS-Inspection
    http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html?dwzone=webservices

    WS-Inspection .NET Library
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnglobspec/html/ws-inspection.asp

    XML Key Management
    http://www.oasis-open.org/cover/xkms.html
    http://www.xmltrustcenter.org/xkms/dotnet/index.htm

    SOAP Service Broker
    http://ugweb.cs.ualberta.ca/~mallett/c401/SOAP%20Service%20Broker%20Product%20Report.doc
    http://ugweb.cs.ualberta.ca/~mallett/c401/

    SOAP Presentation
    http://www.sun.ca/en/events/devdays/docs/ThoughtWorksWebServicesEnterprise.pdf

    Service Broker
    http://www.theserverside.com/resources/article.jsp?l=Service-Broker

    WSFL (Web-Service Flow Language)
    part 1 http://www-106.ibm.com/developerworks/webservices/library/ws-wsfl1/
    part 2 http://www-106.ibm.com/developerworks/library/ws-wsfl2/?n-ws-2142    
    http://xml.coverpages.org/wsfl.html

    WSDL processing with XSLT
    http://www-106.ibm.com/developerworks/library/ws-trans/index.html?dwzone=ws?open&;l=138,t=gr,p=xm4j2001


    CVS
    CVS .NET Client Library
    http://www.icsharpcode.net/OpenSource/NetCvsLib/default.asp

    CVS Plugin for Visual Studio
    http://www.jalindi.com/igloo/

    CVS Plugin for Explorer
    http://www.cvsgui.org/TortoiseCVS/index.shtml

    Diff Utilities
    http://www.componentsoftware.com/csdiff/dlcsdiff.htm

    Forums & Calendar
    http://forum.snitz.com/


    XML
    XSL ISAPI Filter
    http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28001204

    XSLT.com
    http://www.xslt.com/index.html



    Interop
    iNET - Deploy .NET Applications Anywhere (using Java)
    http://www.halcyonsoft.com/products/iNET.asp

    iHUB(tm) - Middleware for Enterprise Frameworks
    http://www.halcyonsoft.com/products/iHUB.asp


    LDAP
    http://www.openldap.org/

    Directory Browser
    Free LDAP Server
    Embedded Database (used by ldap server)

    Borland Goes .NET
    Borland Unveils Product Strategy for Microsoft® .NET(tm) Platform
    Announces Delphi(tm) and C++Builder(tm) Support for Microsoft .NET Platform
    http://www.borland.com/about/press/2002/net_platform.html
    Borland Will Push .NET Out Of Windows
    http://www.sdtimes.com/news/047/story1.htm
    5/1/2002


    © Copyright 2002 Brian Ritchie.