wtorek, lutego 19, 2008

Opis środowiska RAD firmy IBM

Eclipse 3.2 Environment
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Based on open-source EclipseEclipseXXXX
Code assistEclipseXXXX
Code refactoring (Java)EclipseXXXX
Local and team resource managementEclipseXXXX
Plug-in Development Environment (PDE) for extensibilityEclipseXXXX
Debugging servicesEclipseXXXX



Web Development Tools
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Web Site Designer to visually manage and analyze web sitesXX
Web diagram editor for Model-View-Controller designXX
Integrated visual page designer with round-trip raw edit abilityXX
JSP and servlet wizardsWTPX*X*XX
Java Server Faces (JSF) tools - includes JSF Reference Implementation (runtime) and JSF components and visual toolsXX
Struts 1.0 and 1.1 support (Struts 1.2 tolerance)XX
Web development templates and samplesXX
Service Data Object (SDO) supportXX
Support for HTML, DHTML, XHTML, CHTML, JavaScript, CSSWTPX*X*XX
Support for Struts and visual custom tagsXX
Active script debugging for Javascript and Visual Basic ScriptXX
Built-in Crystal Report tools for developing visual data reportsXX
JSF-based report viewing for embedding reports into web applicationsXX
Test and development license of Crystal Enterprise Server for enterprise-wide reportingXX


Graphical UI Editing
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Visual GUI Web Editing: JSF, JSP, HTMLXX
Visual Java GUI Editing: SWT, AWT, and SwingVEXXX




J2EE Development
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Concurrent support for J2EE 1.2, 1.3, 1.4 specificationsWTPX*X*XX
Support for Servlet 2.3 and 2.4WTPX*X*XX
Support for JSP 1.1, 1.2, 2.0WTPX*X*XX
Support for EJB 1.1, 2.0, 2.1WTPX*X*XX
Support for JAXP 1.2 (J2EE 1.4), 1.3 (J2SE 5)WTPX*X*XX
Support for JAX-RPC 1.1WTPX*X*XX
Support for SOAP 1.1, 1.2WTPX*X*XX
Support for JNDI 1.2.1WTPX*X*XX
Support for Java™ Message Service (JMS) and EJB Query LanguageXX
Support for JDBC 3.0WTPX*X*XX
Support for JAR, EAR, WAR packagingWTPX*X*XX
Wizards for creating session beans and CMPs and BMPsWTP
(Only Xdoclet style)
X*
(Only Xdoclet style)
X*
(Only Xdoclet style)
XX
Support for session beans and CMPs and BMPsWTPX*X*XX
O/R mapping (top-down and bottom up)XX
Universal Test ClientXX
Support for building J2EE applications with JDK 1.4.2, targeting WebSphere® Application Server (WAS) v5.1.0.1, v6.0, and v6.1XX
EJB client JAR support to automate the creation of EJB clientsWTPX*X*XX
EJB snippet support to simplify generation of EJB client access codeXX
J2EE Connector Architecture (JCA) tools and adapters for building WebSphere applications that integrate CICS and IMS transactionsXX
Deploy J2EE applications to WebLogic Server (via WTP)WTPX*X*XX




Web Services Development
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Web Services wizards to take you through each step in Web Services developmentWTPX*X*XX
Generate Web service client from WSDL/WSILWTPX*X*XX
Create Web services from Java beans or WSDL/WSIL files using Axis 1.3 Web service runtimeWTPX*X*XX
Create Web services from Java beans, EJBs or WSDL/WSIL files using IBM® WebSphere JAX-RPC Web service runtime.XX
Create Web services from DADX files using DADX - IBM WebSphere JAX-RPC Web service runtime.XX
Discover Web services from JSFXX
WSDL visual editorWTPX*X*XX
Support for J2EE 1,2, J2EE 1.3, J2EE 1.4WTPX*X*XX
Create, validate and detect WS-I compliant Web ServicesWTPX*X*XX
UDDI Registry Browser v2 (interoperated with, but does not exploit, v3)WTPX*X*XX
Discover and publish services to the UDDI Business RegistryWTPX*X*XX
Deploy and test Web Services into Tomcat test environmentsWTPX*X*XX
Deploy and test Web Services into the WebSphere Application ServerXX
Generate native Z-series and COBOL Web ServicesXX
Web Services explorerWTPX*X*XX
Test Web service client with generated sample JSPWTPX*X*XX
Test Web Service client with Universal Test ClientXX
Create, assembe and deploy reliable, asynchronous, secure and interoperable Web Services including support for JAX-WS 2.0, JAX-B 2.0, SOAP 1.27.0.0.37.0.0.3




Portal/Portlet Design tools
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Visual portlet development and WebSphere Portal unit test environmentXX
Visual portal application development and editing of the themes and skins that control appearanceXX
Integrated portlet support for JSF and the Struts frameworkXX
Portlet templatesXX
Support for IBM® Portlet API and JSR 168 standard portlet APIXX




Database Development
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Database wizards to simplify database connectionWTPX*X*XX
Support for DB2, IBM Cloudscape, Oracle 9i, Informix, MS SQL Server, and SybaseWTPX*X*XX
DB Explorer to browse or import database schemasWTPX*X*XX
Data view to create and work with database schemasWTPX*X*XX
SQL query builder and wizard to visually create and execute SQL statements XX
Relational Schema Center to map relational database tables to XMLXX
Object-to-Relational MappingXX
Many-to-many mapping wizardXX
Generate and test Document Access Definition (DAD) fileXX
Stored procedure builderXX
SQLJ supportXX


XML Development
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
XML editor and validatorWTPX*X*XX
XML Schema editor and validatorWTPX*X*XX
Simplified XML Schema Graphical editing optionsXX
High Performance XML Schema validatorXX
XML Schema documentation generatorXX
XML Schema inferencer (XML -> XSD)XX
XML Grammar converters (DTD -> XSD, XSD-> DTD)XX
XML Schema to Java code generation (XSD->SDO)XX
DTD editor and validatorWTPX*X*XX
XSLT editor and validatorXX
XSLT debuggerXX
XPath wizardXX
XML-to-XML mapperXX


Integrated Server Support
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
WebSphere Application Server unit test environments: v5.1, v6.0, v6.1XX
WebSphere Application Server - Express unit test environments: v5.1XX
WebSphere Portal Server unit test environments: v5.1, v6.0, v6.0.1XX
Server enablement (through server adapters)
WebSphere Application Server Community Edition v1.xWTPX*X*XX
Weblogic Application Server v8.1, v9.0 v9.2WTPX*X*XX
Tomcat Jakarta v3.2, v4.0, v4.1, v5.0, v5.5WTPX*X*XX
Jboss v3.2.3, v4.0WTPX*X*XX
JOnAS v4WTPX*X*XX
Glassfish (via free download)WTPX*X*XX
Oracle v10.1.3WTPX*X*XX
Geronimo v1.0, v1.1WTPX*X*XX
Pramati v4.1.xWTPX*X*XX



Testing and Deployment
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Rapid Deployment for WAS 6.0, v6.1XX
Deploy J2EE applications to Weblogic server using IBM Rational Toolkit for Weblogic ServerXX
Integrated WAS Test environmentXX
Test environment for JSP files, servlets, HTML filesXX
EJB universal test clientXX
TCP/IP Monitor to monitor requests and responses between a browser and an application serverWTPXXXX
Manage server instances and server configurationsWTPX*X*XX
Test different run-time environments locally or remotelyWTPX*X*XX
Testing and publishing tools for webWTPX*X*XX



Java Code Analysis
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Dynamic runtime code analysisTPTPXXXX
Static source code analysis and reporting
J2SE Best PracticesTPTPX*XXX
J2SE Design PrinciplesXXX
J2SE SecurityXXX
Globalization, Performance, and NamingXXX
J2EE SecurityXXX
Private APIXXX
Integrated Java Development EnvironmentEclipseXXXX
Configurable JREXXXX
Java Development Kit, including Java 5 supportXXXX
Scrapbook for testing code snippetsEclipseXXXX
Code RefactoringEclipseXXXX
*No built-in BIRT-based reporting of analysis results.


Java Runtime Analysis
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Tabular view for code coverage annotationTPTPXXXX
Sequence Diagrams (host, thread, class, object interactions)TPTPXXXX
Advanced memory profiling and memory leak detectionTPTPXXXX
Code coverage Analysis (Method level)TPTPXXXX
Code coverage Analysis (Line level)
Views to visualize thread interactionsTPTPXXXX
Remote data collection across multiple serversTPTPX*X*XX
User defined runtime probesTPTPXXXX
Interactive reports and metrics (BIRT based reports)TPTPXXXX
TPTP performance profiling, tracing and loggingTPTPXXXX



Java Structural Analysis
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Automatic pattern detectionXX
Automatic anti-pattern detectionXX
Architectural discovery, analysis, metrics, and stability reportingXX
Implementation level architectural rulesXX



C/C++ Development Tools
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
C/C++ Development Tools, version 2.0 supportCDTX*XX*X
C/C++ editors and build managementCDTX*XX*X
C/C++ Compiler and debugger integrationCDTX*XX*X
C/C++ UML code editorsXX
Integration with third-party Eclipse-based C/C++ IDEsX


Architecture Frameworks
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
DoDAF SupportXXX


UML Modeling Tools
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Support for UML 2.1 models MDTXXX*X
Standard Diagram Support: Class, Communication, Component, Composite Structure, Deployment, Activity, Sequence, State, Use Case, and ObjectXXX
UML profile editorXXX
OCL SupportXXX
Automatic diagram generationXXX
Eclipse ExtensibilityPDEXXXX
Extensive Eclipse/Modeling/Patterns/Transformation APIXXX
Java-based "scripting" for extensibility leveraging the Eclipse JDTXXX
Visual compare/mergeXXX
UML sequence diagram view of Java method bodiesXX
Integration with logical data modeling and physical data modeling in Rational Data ArchitectXXX
Dynamic topic diagramsXXX
Visual refactoringXX
Mixed modeling supports the mixing of UML and code modeling artifacts on the same diagram.XXX
UML Model RefactoringXXX



Code Modeling Tools
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
EJB Modeling (UML notation for EJBs)XX
Java Modeling (UML notation for Java classes and interfaces)XXX
C++ Modeling (UML notation for classes and structs))XX
UML sequence diagram view of Java method bodiesXXX
DDL Modeling (using IE notation)XXXX
Include code modeling diagrams as part of Javadoc documentationXXX



Pattern/Transformation Support
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Data Model Transformations
    UML to Logical Data Model*
XXX
C++ and CORBA Transformations
    C++ to UML
XX
    UML to C++
XX
    UML to CORBA IDL
XX
Java and EJB Transformations
    Java to UML
XX
    UML to Java
XX
    UML to EJB
X
Service Oriented Architecture Transformations
    Business Process to Service Provider
7.0.0.2
    UML to BPEL
7.0.0.2
    UML to SCDL
7.0.0.2
    UML to WSDL
7.0.0.2
    UML to XSD
7.0.0.2
    Merge support for UML-to-XSD, UML-to-WSDL, and UML-to-SOA transformations
7.0.0.4
Selective language to UML harvestingXX
UML Pattern contentXXX
UML Pattern/Transform authoring framework and servicesXXX
Enhanced GUI-based JET Transform Authoring toolsXXXX



Reusable Asset Browser
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Browse and import assets from a repositoryXXX
Package model and development artifacts into a RAS bundleXXX



Productivity
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Cheat sheets for EclipseEclipseXXXX
Additional Cheat sheets for product featuresXXXX
Application templates and template libraryXXXX
Eclipse samples and tutorialsEclipseXXXX
Comprehensive product samples and tutorialsXXXX
Getting Started and Installation GuideXXXX



Team
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Pluggable repositoriesEclipseXXXX
Adaptors for Concurrent Versions SystemEclipseXXXX
Adaptors for Rational ClearCase®XXXX
Rational ClearCase LTXXXX
Drag-and-drop association of RequisitePro® requirements with modelsXXXX
Document generation with SoDA®XXX
HTML and XML based data extraction and reportingXXXX
HTML and XML based model reportingXXX
Extensive printingXXXX
Model traceability reporting and custom queriesXXX
IBM Problem Resolution ToolkitXX
RUP® Developer ConfigurationXX
RUP Architect ConfigurationXXX
RUP Systems Developer Configuration (with RUP SE content)X


Installation Requirements
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Processor800 MHz Pentium III800 MHz Pentium III800 MHz Pentium III800 MHz Pentium III
Memory512 MB512 MB1 GB1 GB
Disk Space, while installed750 MB1 GB2 GB2 GB
Additional disk space required while running (in directory pointed to by the TEMP environment variable on Windows or in /tmp on Linux)500 MB500 MB500 MB500 MB
Eclipse versions into which product can be installed3.2.2
(but < 3.3)
3.2.2
(but < 3.3)
3.2.2
(but < 3.3)
3.2.2
(but < 3.3)



Integrations
Architecture Management toolsEclipse / Eclipse ProjectsRational Software Modeler v7.0Rational Systems Developer v7.0Rational Application Developer v7.0Rational Software Architect v7.0
Rational Asset ManagerXXXXX
Rational ClearCase 2003.06.xx (v6), v7XXXXX
Rational ClearCase LT on Windows: 2003.06.13 or laterXXXXX
Rational ClearCase LT on Linux: 2004 SR4 or laterXXXXX
Rational ClearQuest® 2003.06.13 or laterXXXXX
Rational RequisitePro versions 2003.06.13 or laterXXXX
Rational SoDAXXX
Rational Unified Process® 2003.06.13 or laterXXXX
WebSphere Business Modeler versions 5.1, 6.0XX
* Rational ClearCase v5 has been discontinued. Patch level NT-32 was required to support the RSA ClearCase type manager.
See the Installation Guide for each product for additional information.
Function that is available and can be added from Eclipse / Eclipse Projects, but is not included in the offering by defaultX*
Glossary

CDT - C++ Development Tools
MDT - Model Development Tools
PDE - Plug-in Development Environment
TPTP - Test and Performance Tools Platform
VE - Visual Editor
WTP - Web Tools Platform

Genutec - tani dostęp do spersonalizowanej wersji środowiska Eclipse.

  1. Blog - http://www.jroller.com/myeclipseblog/
  2. Szkolenia w Eclipse - http://www.myeclipseide.com/module-htmlpages-display-pid-7.html
  3. Co zawiera myEclipse - http://www.myeclipseide.com/module-htmlpages-display-pid-1.html
  4. Instrukcje dp myEclipse - http://www.myeclipseide.com/module-htmlpages-display-pid-340.html
  5. IBM ogłosił, że od 11 lutego nie wspiera WSAD (WebSphere Application Developer) i sugeruje przejście na Rational RAD (produkt kupiony 5 lat tem - właśnie mija rocznica)

poniedziałek, lutego 18, 2008

Budujemy mosty (Sun JAVA<->Ms COM)
  1. Płatne:
    1. http://www.jacozoom.com/en_home.shtml
    2. http://www.nevaobject.com/j2cdetails.asp?kw=java%20com%20bridge
  2. Ten jest bezpłatny - http://danadler.com/jacob/
  3. Bezpłatny - http://php-java-bridge.sourceforge.net/pjb/examples.php
  4. http://sourceforge.net/projects/jcom/
  5. http://sourceforge.net/projects/jacob-project/
  6. http://www.alphaworks.ibm.com/tech/dtjcb?open&S_TACT=104AHW61&S_CMP=GR&ca=dgr-jw26awdtjcb
  7. Płatna - http://j-integra.intrinsyc.com/
Ciekawe:
  1. Strony: LinkedIn, www.hotscript.com, server Java RESIN.
  2. Skrypt, do włączania zewnętrznego pliku z JS:
  3. javascript:(function(){
    va s=document.createElement('script');
    s.setAttribute('src','http://url');
    s.setAttribute*'type','text/javascript');
    document.getElementByTagName('head')[0].appendChild(s);

  4. x

czwartek, lutego 14, 2008

Tak się potwierdza moja teoria (świetny serwis Techmeme )
Zimbra potwierdza moją teorię, że można zbudować interfejs z siecią Internet na bazie średnio-grubego klienta wykorzystującego elementy silnika przeglądarki (czuje się artefakt przeglądarki w klienckiej aplikacji). Zimbra zbudowała swój interfejs na bazie technologii Prism (Mozilla - opartej o WebRunnera ).
Znowu SSL
Ale w szerszym zakresie. SSL stosuje elementy kryptografii a właściwie kodowanie trzech typów:
  1. hash - kodowanie w jedną stronę, służy do sprawdzenie nienaruszalności danych, jest to algorytm obliczający skrót jakiegoś długiego dokumentu. Skrót ten ma być unikalny. Każdy inny dokument daje w wyniku inny skrót. Zwykle ten skrót poddaje się szyfrowaniu. Odbiorca odszyfrowuje skrót ponownie i oblicza skrót na podstawie otrzymanej wiadomości. Oba te skróty powinny być jednakowe.
  2. symetryczne - do szyfrowanie treści służy jeden i ten sam klucz. Obliczenia związane z szyfrowaniem kluczem symetrycznym są szybkie i służą do szyfrowania dużych treści przesyłanych informacji. Problem jest jednak z wymianą tego klucza (dostarczeniem) do nadawcy i odbiorcy tak aby haker nie mógł go przechwycić.
  3. asymetryczne - stosowane są dwa klucze: prywatny (u nadawcy-autora) i publiczny (dostępny wszystkim). Do szyfrowania mogą służyć oba klucze. Szyfrując kluczem publicznym kogoś powodujemy, że tylko on może odczytać wiadomość. Szyfrując swoim kluczem prywatnym wszyscy inni mogą wiadomość odczytać. Problem jest jednak weryfikacją kto stoi za tym kluczem.
Ten ostatni problem rozwiązują certyfikaty właściciela. Są wydawane przez tzw. zaufane urzędy i stanowią paczkę informacji (klucz publiczny właściciela, informację o nim oraz informację o wystawcy/wystawcach certyfikatu oraz dodatkowo klucz publiczny urzędu wystawiającego).
Certyfikat jest zaszyfrowany kluczem prywatnym tego urzędu. Kiedy odbiorca odczytuje certyfikat przy pomocy klucza publicznego urzędu to wie, że dane pochodzą od tego urzędu, a dane te to informacja o nadawcy.
W celu zapanowania nad wydanymi certyfikatami każdy z nich ma okres ważności (dlatego trzeba go odnawiać) i stworzono listę certyfikatów odwołanych (CRL).
Urzędy certyfikacyjne są wbudowane w przeglądarki internetowe i podczas aktualizacji przeglądarek mogą być dodane lub usunięte.
Jak to działa razem?
  • Połączenie inicjuje klient i podaje serwerowi swoje możliwości kodowania
  • Serwer odpowiada wysyłając do klienta swoje możliwości i swój certyfikat oraz losowe dane
  • Klient sprawdza certyfikat czy jest ważny i zaufany
  • Gdy certyfikat serwera jest OK to klient wysyła losowo wygenerowany klucz sesji i koduje go kluczem publicznym serwera (może też wysłać dane autentykujące go zakodowane też kluczem pub. serwera)
  • Serwer to odbiera i rozkodowuje swoim kluczem prywatnym, teraz ma klucz od klienta tzw. master key (mają dzięki temu ten sam klucz). Posłuży on do generowanie klucz sesji
Źródło: TechRepublic

środa, lutego 13, 2008

Zasoby platformy .NET (na podstawie TechRepublic - Tony Patton):

  1. Stosowanie klas częściowych w .NET 2.0
  2. CodeSmith do generowania gotowego kodu
  3. Dziwna strona oferująca certyfikaty - http://www.cacert.org/
  4. Dostęp do danych w XML poprzez LINQ i tutorial http://blogs.techrepublic.com.com/programming-and-development/?p=585
  5. Dostęp do usług webowych z zabezpieczeniem
  6. Utworzenie usługi webowej
  7. Praca z BLOB w C# i ASP.NET
  8. Pobranie usługi sieciowej
  9. Przesłanie danych między stronami
  10. Kody aktywacyjne VS 2008 - Completing Registration of your Product
    Your registration key is: XPKSX4MJBXFLJB
  11. JS - http://articles.techrepublic.com.com/5100-3513_11-6149603.html?tag=rbxccnbtr1
  12. Bezpieczne dane w pamięci (secure string)
  13. Video o bezpieczeństwie

Derby (ale w Java)

Baza Derby jest darmową, prostą bazą danych opartą o pliki tekstowe. Jest na witrynie TechRepublic artykuł na ten temat. Pliki z intslacją są tu. Ciekawe dlaczego Google nie wziął tej bazy a SQLite do swego projektu Google Gears?

Wieści:

  1. Sun zamierza kupić VirtualBox (Innotek) - http://www.linuxworld.com.au/index.php?id=1158064042&eid=-50
  2. Naukowcy z IBM twierdzą, że 100% ataków komputerów poprzez sieć jest zakamuflowana (http://www.linuxworld.com.au/index.php/id;1329782986;fp;4194304;fpid;1). Od jakiegoś czasu obrona przed atakami w szerokim tego słowa znaczeniu (wirus, rootkit, spyware) przeniosła się z poczty do przeglądarki (to Web browser as an [exploit] entry point). Stosują do tego "zaciemnianie" exploitów, które wykorzystują wbudowane w przeglądarki języki skryptowe (JavaScript, Flash) lub wtyczki (rozszerzenia) do obsługi innych poza HTML formatów, które z kolei korzystają z innych j. skryptowych (np. PDF/AdobeScript) wbudowanych w ten format.
  3. Co lepsze ODF czy MS OOXML? Przyszłość pokaże, ale nie wolno lekceważyć MS, która mając ponad 500 mln użytkowników, chce upowszechnić format XML zgłaszając go do komitetu standaryzacyjnego. Głosowanie w tym miesiącu. Grupa Burton zamieściła nawet dość pochlebną opinię o formacie firmy MS.
  4. Z innej beczki - narzędzia do bezpiecznego surfowania - http://reviews.cnet.com/4321-3667_7-6561525.html (LinkScanner Lite), a liczba przestępstw rośnie (http://reviews.cnet.com/4520-3513_7-6771187-1.html?tag=txt), wstrzyknięcie kodu poprzez iFrame (http://wormradar.com/vidchoices.html), wiadomości z ostatniej chwili - AVG kupiło firmę Exploit Prevention Lab (http://www.explabs.com/) aby udoskonalić swój produkt o funkcje antypishingu (wypuściło nawet wersję bata 8).
  5. Google wypuścił niedawno Google Apps Team Edition - gdzie umożliwił lepsze współdzielenie dokumentów (http://www.betanews.com/article/Google_Apps_gets_improved_document_sharing/1202403825)
  6. Pranks - http://blogs.techrepublic.com.com/geekend/?p=1128&tag=nl.e605

wtorek, lutego 12, 2008

Iron Microsoft (wilk w owczej skórze)

Mamy już IronPython-a, teraz czas na IronRuby (a może wkrótce będzie IronPHP?). Nie wiadomo. Microsoft wziął na celownik oprogramowanie open-source, dzięki zaaprobowanej przez OSI licencji Ms-PL może asymilować produkty open-source z wymogiem udostępnienia ich tej społeczności.

Właśnie lider projektu Ruby.NET oświadczył o zakończeniu prac i przekazaniu wyników do grupy MS IronRuby. Nie jest to do końca dobra wiadomość, ponieważ istnieje zagrożenie "zatrucia" projektu przez "wyższe cele" MS w imię których będą podejmowane takie a nie inne rozwiązanie projektowe. O tym ostrzega eWeek.

poniedziałek, lutego 11, 2008

Zasoby Java:

  1. Świetny serwer - container: http://www.mortbay.org/
  2. Klient HTTP po nowemu: http://hc.apache.org/httpclient-3.x/
  3. Porównanie darmowych (entry-level) serwerów aplikacji w Java: http://www.javaworld.com/javaworld/jw-12-2007/jw-12-appservers.html
  4. Zastosowanie SVN w Eclipse: http://www.informit.com/articles/article.aspx?p=517206&seqNum=2

Szewski poniedziałek (nie dla wszystkich)

  1. Is Tomcat an application Server? - bardzo ciekawe porównanie implementacji Java EE w Apache Tomcat. Każdy serwer zgodny z Java EE musi wspierać:
    1. Enterprise JavaBeans (EJB) server and container;
    2. JNDI capabilities;
    3. Java Message Service (JMS) framework;
    4. Java Transaction API (JTA) framework;
    5. J2EE Connector Architecture.
    6. uwaga: każdy komponent opisany jest przez swój - deployment descriptor
  2. Dodatkowo musi wspierać hierarchiczny loader klas (hierarchical classloader) - architekturę wspierającą następującą funkcjonalność:
    1. EJB loading/reloading,
    2. WAR loading/reloading,
    3. manifest-specified utilities (JAR itd)
  3. Zawierać musi także pojemniki (containers - these containers provide structure and functionality that facilitate the deployment, persistence, and execution of supported components) dla:
    1. client applications,
    2. servlets, oraz
    3. EJB components
  4. Obrazuje to następująct schemat:

Architektura Java EE jest pełna i wspiera wszystkie możliwe interakcje z aplikacjami (nawet tymi zewnętrznymi poprzez JCA - Java Connector Architecture). Jednak ta rozległość funkcjonalna powoduje duży narzut na zasoby w przypadku (najczęstszym) gdy potrzebne są tylko niektóre serwisy np. Web server/container, potrzebne są tylko servlets, JSPs i JDBC. Wygląda to tak. Tradycyjnie aplikacje w Java EE type Enterprise zawierają kombinację następujacych komponentów/technologii:

EAR files Java Servlets JavaServer Pages or JavaServer Faces Enterprise JavaBeans (EJB) Java Authentication and Authorization Service (JAAS) J2EE Connector Architecture JavaBeans Activation Framework (JAF) JavaMail Java Message Service (JMS) Java Persistence API (JPA) Java Transaction API (JTA) The Java Management Extensions (JMX) API Java API for XML Processing (JAXP) The Java API for XML-based RPC (JAX-RPC) The Java Architecture for XML Binding (JAXB) The SOAP with Attachments API for Java (SAAJ) Java Database Connectivity (JDBC) framework

Java Web Application zawierają zazwyczaj:

  • WAR files
  • Java Servlets
  • JavaServer Faces or JavaServer Pages
  • Java Database Connectivity (JDBC) framework

Bardziej skomplikowana architektura aplikacji typu enterprise wygląda tak:

sobota, lutego 09, 2008

Sobota - linki z FF:
  1. Firma Google ogłosiła nowa aplikację Google Apps Team Edition -umożliwia prace grupową
  2. Świetny kombajn muzyczny - http://www.dbpoweramp.com/
  3. Wtyczka w FF do Google Docs - http://www.gdocsbar.com/
  4. Wtyczka w FF do programowania strony - http://groups.csail.mit.edu/uid/chickenfoot/
  5. To samo, włącza dostęp do aplikacji google
  6. Ciekawy projekt na temat bezpieczeństwa aplikacji internetowych - http://www.aspnetpro.com/newsletterarticle/2007/09/asp200709dk_l/asp200709dk_l.asp
  7. Tworzenie modelu encji danych w .NET - http://msdn.microsoft.com/msdnmag/issues/08/02/DataPoints/default.aspx
  8. Nowy typ ataku aplikacji modelu Web 2.0 mimo stosowania SSL (bardzo niebezpieczne)- http://erratasec.blogspot.com/2008/01/more-sidejacking.html
  9. Ciekawy przykład:
  10. protected void PressButton_Click(object sender, EventArgs e)

    {

    string path = @"C:boot.ini";

    try

    {

    using (StreamReader reader = new StreamReader(path))

    {

    string content = reader.ReadToEnd();

    ResultsLabel.Text = content;

    }

    }

    catch (SecurityException secEx)

    {

    ResultsLabel.Text = secEx.ToString().Replace("rn", "<br>");

    }

    }

  11. Bardzo ciekawa strona - http://www.aspnetpro.com/
  12. Java:
    1. http://java.sun.com/docs/books/tutorial/deployment/jar/index.html
    2. http://java.sun.com/javase/6/docs/technotes/guides/jar/index.html
    3. http://java.sun.com/docs/books/tutorial/networking/urls/readingURL.html
  13. JavaScript - usability - http://www.webcredible.co.uk/user-friendly-resources/dom-scripting/form-usability.shtml
  14. Kryptografia - .NET - http://msdn2.microsoft.com/en-us/security/default.aspx
  15. MySQL przejęty przez Sun-a - http://www.betanews.com/article/Will_authorized_hosting_put_MySQL_on_a_par_with_Oracle_and_DB2/1202410783
  16. Portal do nauczania .NET - http://www.microsoft.com/learning/vstudio/2008/default.mspx
  17. SSL w Mozilla - http://www.mozilla.org/projects/security/pki/nss/ref/ssl/gtstd.html#1012305
  18. MS SQL Server - Bloby - http://www.sqlservercentral.com/articles/T-SQL/61679/
  19. MS Security - http://msdn2.microsoft.com/en-us/security/default.aspx

piątek, lutego 08, 2008

Piątek (ArsTechnica.com):

  1. Google kupił latem 2007 firmę Postini (lider w dziedzinie business security i antispam) i wykorzystuje jej IP do ochrony GoogleApps (http://arstechnica.com/news.ars/post/20080205-google-expands-business-options-thanks-to-postini-acquisition.html). Filtry antyspamowe są tanie 3$/rok i zgodne z wiekszością klientów pocztowych. Za 25$ na rok można mieć pocztę zarchiwizowaną i przechowywaną na serwerze. Ponad to dodał obsługę protokołu IMAP (znacznie wygodniejszego do zastosowań komercyjnych w IT, ale mającego większe wymagania od serwerów pocztowych. Jest to tzw. Team Edition, która powiązana jest nie z domeną firmy ale z poprawnymi kontami użytkowników założonymi w domenie firmy (taki jest warunek). Oferta jest bez obsługi poczty. Krytycy takie posunięcia zauważają pewne niebezpieczeństwo w zakresie ochrony danych i nawet większego obciążenia działu IT związanego z obsługą tych aplikacji.
  2. Dzisiaj ogłosił nową wersję Google Apps, którą można zainstalować w firmie bez udziału działu IT (http://arstechnica.com/news.ars/post/20080207-google-releases-new-team-edition-application-suite.html).
  3. Zachęta do korzystania z Google Apps (https://www.google.com/a/)
  4. Oferta dla partnerów np. jednokrotne logowanie - https://www.google.com/a/help/intl/pl/admins/partners.html
  5. Oferta dla programistów: http://code.google.com/apis/apps/
  6. Szuka konfiguracji usług google dla personalizacji.

środa, lutego 06, 2008

Popielec:

  1. Podpisywanie własnych programów to dobra rzecz, ale trzeba mieć certyfikat: http://www.wintellect.com/cs/blogs/jrobbins/archive/2007/12/21/code-signing-it-s-cheaper-and-easier-than-you-thought.aspx. Podpis wygląda tak:
  2. signtool sign /f YourFile.pfx /p <password> /t http://timestamp.comodoca.com/authenticode <files> gdzie .pfx pochodzi z wizarda exportu certyfikatów z repozytorium
  3. Więcej informacji na ten temat: http://msdn2.microsoft.com/en-us/library/aa387764.aspx
  4. Firma COMODO daje dużo: certyfikaty, firewall, antywirus itd.
  5. MS nie zapomina o potrzebie DLR (języków dla "mas") - świadczy o tym ostatnie sympozjum. Strona o JScript - http://blogs.msdn.com/jscript/archive/2007/05/07/introducing-managed-jscript.aspx. Są tam rekomendacje odnośnie optymalizacji kodu w JS pod IE.
  6. Klasy w JS:
    1. http://blogs.msdn.com/jscript/archive/2007/09/24/classes-in-jscript-part-i.aspx
    2. http://blogs.msdn.com/jscript/archive/2007/09/30/classes-in-jscript-part-ii-instance-properties-methods-class-properties-methods.aspx
    3. http://blogs.msdn.com/jscript/archive/2007/10/31/classes-in-jscript-part-iii-class-hierarchy-and-data-encapsulation.aspx
  7. IronPython - tutorial: http://www.voidspace.org.uk/ironpython/winforms/part3.shtml
  8. Blog twórcy IP - http://blogs.msdn.com/hugunin/
  9. Blog twórcy w IE - Scotta Gur...: http://weblogs.asp.net/scottgu/archive/2008/01/31/mix08.aspx
  10. IP -strona główna: http://www.codeplex.com/IronPython/Wiki/View.aspx?title=More%20Information&referringTitle=Home
  11. Jak ściągnąć dane z dowolnej strony w IE i zapisać na dysku - http://blogs.msdn.com/jscript/archive/2007/07/23/using-jscript-based-ie-add-on-to-export-data-from-any-website.aspx
  12. Strona MIX-a z MS: http://sessions.visitmix.com/
  13. Inne źródła informacji poza Google:
    1. Blogsearch - http://blogsearch.google.com/
    2. http://quacktrack.com/
    3. agregaty informacyjne - http://technorati.com/
    4. szukanie w blogu - http://www.blogdigger.com/

wtorek, lutego 05, 2008

Zasoby ciekawe do Informix'a

Informix ciągle zyje i ma się dobrze. Pod skrzydłami IBM rozwija się nadal:

  1. http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls858.htm - o zrzucamiu BLOB-ów
  2. Strona główna o Informix w IBM: http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls858.htm
    1. "This manual describes how to write user-defined routines (UDRs) in the Java programming language for IBM Informix Dynamic Server with J/Foundation. It also describes the infrastructure that enables you to run Java applications in the database server. It describes the Java classes, methods, and interfaces that allow you to access databases from within IBM Informix Dynamic Server with J/Foundation, rather than from a client application." - J/Foundation Developer's Guide . ()
    2. O JDBC
  3. Bardzo aktywnie działająca strona forum - http://www.iiug.org/Insider/insider_jan08.php#2.2
  4. Magazyn o Informix - http://www.informixmag.com/
  5. Grupa fanów Informixa - http://www.iiug.org/forums/technical.php
  6. Strefa Informixa - http://www.informix-zone.com/
  7. Lista ciekawych odnośników Informix - http://www.informix-zone.com/informix-url-list
  8. Nowa wersja Cheetah - Informix 11 - http://www.informix-zone.com/cheetah-resources#edu-web

środa, stycznia 02, 2008

Zasoby Javy (najnowsze):

  1. Czytanie danych z Internetu - Reading data from Internet, uwaga można podać parametry do serwera proxy w linii wywołującej np: c:practice>java -Dhttp.proxyHost=xyz.com -Dhttp.proxyPort=8080 WebSiteReader
  2. Korzystanie z silników skryptowych - http://www.javaworld.com/javaworld/jw-11-2007/jw-11-jse6.html?page=5#resources - stosowanie AJAX w applecie. Ajax programing with Java Scripting API.
  3. Bouncy Castle jest dostępny w wersji dla C# (ciekawe)
  4. Potral społeczności JAVA - http://www.jdn.pl/node/1339
  5. Portal zajmujący się sposobami deplojowania Javy - https://deployment.dev.java.net/
  6. Kapitańskie - http://www.captain.at/programming/java/executable-java-application.php
  7. Wczytaj z internetu XML - http://www.developerfusion.co.uk/show/2064/
  8. Portal twórcy JAVA EE - http://www.jaceklaskowski.pl/

niedziela, grudnia 23, 2007

Java to potęga
Ostatnio miałem zamiar sprawdzić w CRL z Sigillum czy przypadkiem jakiś certyfikat nie jest odwołany. Sprawa banalna ale w .NET nie mogłem znaleźć odpowiedniego rozwiązania. Standardowa Java dostarczyła mi odpowiedzi:
package mw.coig;
import java.security.cert.*;
import java.io.*;
import java.math.BigInteger;
// http://www.koders.com/noncode/fidDB6188EED123B04A3091BE8FC202EF1FC41FFF6F.aspx:
public class testCRL{
public static void main(String[] args)
throws FileNotFoundException, CertificateException {
InputStream inStream = new FileInputStream("fileName-of-crl");
CertificateFactory cf = CertificateFactory.getInstance("X.509");
try {
X509CRL crl = (X509CRL)cf.generateCRL(inStream);
BigInteger serialNumber = BigInteger.valueOf(args[0];
X509CRLEntry wynik = crl.getRevokedCertificate(serialNumber);
if (wynik == null) {
System.out.println("Ok");
}
else {
System.out.println("Bad");
}
inStream.close();
}
catch (Exception e) {
// Print out the exception that occurred
System.out.println("Blad : "+e.getMessage());
}
}
}
Wniosek taki: Framework w Javie jest naprawdę bardzo rozległy (obejmuje naprawdę wszystkie potrzebne i nawet trudne do wymyślenia problemy informatyczne), framework .NET też jest świetny ale działa wyłącznie w ekosystemie MS, czego oni nie włączyli (z open source, ponieważ zrobili to po swojemu tego nie ma (a brakuje dużo). Więc do zagadnień otwartych (platform heterogenicznych) najlepsza jest Java, ponieważ pokrywa największe spektrum problemów.

sobota, grudnia 15, 2007

Sobota ranek

Materiały na temat bibliotek pomocnych w tworzeniu PHP ze strony http://www.webdigity.com/index.php/topic,7333.0.10+projects+every+php+developer+should+use.html:

  1. autentykacja HTTP (prosta)
  2. wymuszenie nowej strony w CSS
  3. symulacja POST -a do innej strony poprzez użycie gniazdek
  4. chyba najciekawsza - wykorzystanie curl to pobrania zawartości innej strony
  5. równie ciekawa - uruchomienia w C# niewidocznej aplikacji konsolowej z pobraniem jej wyniku
  6. zastosowanie XML do pobranie elementów DOM - wymagaDomXML
  7. przewijanie DIV-a w HTML
  8. pobranie innej strony w C#
  9. zdefiniowanie ciekawej klasy w JS (podejście klasowe poprzez prototype)
  10. prosty, ale pouczający przykład jak podpiąć się do bazy w C#
  11. jak ustawić fokus na innym elemencie WinForm w C#
  12. zapis do pliku tekstowego w PHP, w PHP można prościej
  13. przykład serializacji danych w C#

czwartek, grudnia 13, 2007

Informix z Javą

  1. Świetny help z IBM - należy zrobić nastepujące rzeczy:
    1. Stworzyć plik w javie - jako klasę statyczną np: public static int explosiveReaction(int ingredient);
    2. Powstanie wtedy klasa np Courses w pliku jar: - /students/data/Courses.jar
    3. Należy ją zainstalować w bieżącej bazie -
      EXECUTE PROCEDURE     sqlj.install_jar("file://students/data/Courses.jar", "course_jar")
    4. Inne polecenia to: sql.remove_jar, sql.replace_jar, sql.alter_java_path
    5. Jest jeszcze pojęcie External Routine Reference które mapuje nazwy:
    6. EXTERNAL NAME "wskaznikDoPlikuJar.jar" LANGUAGE JAVA
    7. Więcej o tej ostatniej:
    8. EXECUTE PROCEDURE alter_java_path("course_jar",     "(professor/*, prof_jar)"); EXECUTE FUNCTION sql_explosive_reaction(10000)
    9. Powyższe oznacza, że będzie przeszukiwana dodatkowa biblioteka w katalogu professor w celu znalezienia pakietu prof_jar.       
    10. Dostajemy wtedy tzw. jar ID (course_jar), który może służyć jako odnośnik w UDR napisanych w javie.
    11. Trzeci parametr pozwala na wykonanie dodatkowych funkcji (w postaci zdań SQL) np. zarejestrowanie i przydzielenia grantów (przywilejów) dla tego UDR.
    12. Przykład wywołanie funkcji w C:
    13. CREATE FUNCTION equal( a point, b point ) RETURNING BOOLEAN;    EXTERNAL NAME "/usr/lib/point/lib/libbtype1.so(point1_equal)"    LANGUAGE C END FUNCTION;
    14. Fragment dokumentacji orginalnej:
      To create a user-defined function written in the Java language 
      1. Write a Java static method, which can use the JDBC functions to interact with the database server.
      2. Compile the Java source file and create a .jar file (the shared-object file for Java).
      3. Execute the install_jar( ) procedure with the EXECUTE PROCEDURE statement to install the jar file in the current database.
      4. If the UDR uses user-defined types, create a map between SQL data types and Java classes.
      5. Use the setUDTExtName( ) procedure that is explained in EXECUTE PROCEDURE.
      6. Register the UDR with the CREATE FUNCTION statement.

      Rather than storing the body of an external routine directly in the database, the database server stores only the pathname of the shared-object file that contains the compiled version of the routine. When it executes the external routine, the database server invokes the external object code.

      The database server stores information about an external function in system catalog tables, including sysprocbody and sysprocauth. For more information on the system catalog, see the IBM Informix Guide to SQL: Reference.

    1. Bardzo ciekawie wygląda opcja szyfrowania danych - http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls1024.htm - w Informixie

środa, grudnia 12, 2007

Takie sobie linki o VFP
  1. http://blog.todmeansfox.com/category/visual-foxpro/ - blog o VFP pod kątem wykorzystania w BI i ETL + dużo o normalizacji danych oraz porównywaniu podobnych tabel
  2. http://rickschummer.com/blog/2005/04/paying-it-forward-vfp-tips.html
  3. http://www.alvechurchdata.co.uk/foxhide.htm - ukrycie okna _screen w VFP (wpis w config.fpw: screen=off)
  4. http://dabodev.com/documentation - srodowisko foxopodobne w Pythonie
  5. http://www.cetus-links.org/software.html - linki do wszystkiego co jest podobne do OO (w tym także VFP)
  6. http://users.aol.com/foxproresources/index.htm - zasoby do VFP w starych wersjach (nostalgia), szczególnie biblioteka techniczna.
  7. http://leafe.com/dls - stare ale jare
  8. http://www.tedroche.com/blog/tag/foxpro/
  9. http://www.ml-consult.co.uk/links.htm - super linki do innych
  10. http://leafe.com/dls/vfp - super strona do współczesnego VFP
  11. http://foxcentral.net/microsoft/NETforVFPDevelopers.htm - podręcznik dla VFP by przeszli na stronę .NET
  12. http://www.foxite.com - oczywiście tego nie można pominąć
  13. http://www.tek-tips.com/viewthread.cfm?qid=1430765&page=1 - super forum
  14. http://www.programmersheaven.com/2/vfp-Dot-Net-Interop - taki sobie raj dla programistów
  15. http://my.advisor.com/doc/18897?open&p=2&pid= - trudności z VFP pod Vistą
  16. http://www.microsoft.com/communities/newsgroups/list/en-us/default.aspx?dg=microsoft.public.fox.programmer.exchange - równie dobre ale trochę tendencyjne z MS
  17. http://www.geocities.com/ResearchTriangle/9834/mainfram.htm - stare ake jest tam SpyIn (DLL)

  1. http://aspnet.4guysfromrolla.com/ - trochę z innej beczki, ale też dobre
  2. http://software.ericsink.com/articles/Boundaries.html
  3. http://www.codinghorror.com/blog/ -
  4. freshmeat -
  5. http://submain.com/download.aspx?product=guidelines
  6. http://www.larkware.com/
  7. http://www.joelonsoftware.com/
  8. http://diveintomark.org/tag/personal - mark pilgrim site
  9. http://www.gotdotnet.com/community/messageboard/home.aspx - po gotdotnet zostało niewiele ale ma świetne linki
  10. http://www.kamalpatel.net/Downloads.htm#soap
  11. http://www.codeproject.com/KB/cs/jscompress.aspx
  12. http://www.codeproject.com/KB/showcase/StartingWithSilverlight.aspx - zacznij ze Silverlight

niedziela, grudnia 09, 2007

Nowinki:
  1. Kuźnia oprogramowania bezpłatnego - serwis sourceforge - ogłosił walkę ze spadkiem dochodów. Twórcy wolnego oprogramowania nadal będą mogli publikować swoje aplikacje na tym serwisie bezpłatnie, jednakże za zakup tego oprogramowania, serwis będzie pobierał prowizje (od 7 do 12%). Tego samego dnia serwis sourceforge został zhakowany.
  2. Jest nowa wersja LEGO DESIGNER-a - http://fileforum.betanews.com/download/LEGO_Digital_Designer_for_Windows/1100288444/1
Niedziela 9 grud. (tu widać zalety szerokiego spojrzenia witryna AJAXIAN.COM)
Wolta dosłownie w MS, niedawno MS ogłosił projekt Volta (pierwsze wzmianki o nim pojawiły się już latem). Teraz więcej szczegółów na betanews i ajaxian. Projekt jest podobny ideologicznie do GWT (Google) ale bardziej dojrzalszy koncepcyjnie (ma do dyspozycji środowisko dojrzałe wytwórcze w postaci VS2008 oraz do dyspozycji całą gammę języków programowania - wszystkie języki dostępne na platformie .NET mogą tworzyć oprogramowanie aplikacji webowych). Powstało nawet całe laboratorium projektu.
Wg. MS aplikacja webowa jest szczególnym przypadkiem aplikacji Client/Server, jedynie jest spozycjonowana (podzielona na różne części wykonujące się w róznych warstwach). Tu ukłon w stronę tradycyjnych programistów Visual Studio, którzy z zazdrością patrzyli na kolegów "dziergających" strony w JS pisania swym tradycyjnym sposobem a potem podzielnia warstw od warstwy prezentacyjnej (front end) aż po warstwę logiki (back end) i dostarczenie warstwy frontowej przez internet do . Teraz mają możliwośćprzeglądarki lub aplikacji klienta. Projekt jest nowy i pozycjonuje się na równi z AIR firmy Adobe, nie bardzo wiadomo jak ma współpracować z Silverlight. Architekt projektu Meijer mówi o nim, że rozszerza on platormę .NET w stronę tego do czego zawsze była przeznaczona - do konkurowania z Javą.
Bardziej technicznie - jest Volta rekompilatorem kodu MSIL na np. JavaScript, który już może wykonywać się w srodowisku przegladarki.

środa, grudnia 05, 2007

Pomysły zrodzone na kursie UML (nie jest ich za dużo ale zawsze coś)
  1. Wykorzystanie Activex (ScriptX lub CrystalReport) do tworzenia raportów w naszych aplikacjach
  2. Nowy format dokumentów elektronicznych dla Administracji (dz.Ustaw) w listopadzie (nie później)
  3. Będzie SP3 dla WindowsXP (tylko kiedy) - obiecuje zwiększenie wydajności o 10%
  4. DBCJS - IBM nowe podejście do dostępu do baz na serwerze z JS
  5. Serwis gier - gra Warsaw
  6. Książki o UML w WNT, pożyczyłem także jedną Halinie Krzemień
  7. UC -komunikacja między użytkownikiem a systemem
Ach ta JAVA
  1. Przetwarzanie XML - http://www.javaworld.com/javaworld/jw-05-2000/jw-0518-jdom.html?page=3
  2. Skryptowanie JS - http://www.mozilla.org/rhino/ScriptingJava.html

Nowości:

  1. Narzędzie do graficznego tworzenia konfiguracji do InnoSetUp - http://www.istool.org/
  2. Owoce współpracy Zend z MS - nowy, szybki filtr FastCGI do IIS 6.0 (http://www.iis.net) i natywne wsparcie do FastCGI w W2K8 i IIS 7.0. Daje to możliwość szerszego wykorzystania PHP na platformie Windows. Źródło: http://reddevnews.com/news/devnews/article.aspx?editorialsid=887
  3. Co to jest CURL IDE - http://reddevnews.com/news/article.aspx?editorialsid=9200
  4. Wsparcie dla XML w bazach - http://reddevnews.com/news/devnews/article.aspx?editorialsid=880 - DB2 (33% udziału rynku) i Oracle 11g (35%) wspierają standard ISO - SQL/XML, MS (wraz z Access - 22%) jeszcze nie.
  5. Odgrzewanie starych rzeczy: nowy MS-wski LINQ w .NET to nic innego jak urzeczywistnienie idei wtopienia w język programowania zleceń dostępu do baz danych. Ten pomysł już dawno zrealizował VFP!. Tylko trochę inaczej.
  6. Po co mi obiektowa baza danych? Sprawdź - dbo4 java/.net
  7. Otwarte oprogramowanie dla Windows - http://reddevnews.com/columns/article.aspx?editorialsid=1786 - są tam listy (O'Reilly i UBUNTU: Loop ) z takim oprogramowaniem oraz informacja o ZedGraph (http://zedgraph.org/wiki/index.php?title=Main_Page)
  8. Możliwość kopiowania dużych plików - http://www.box.net/services/browse

Portal do nauki C#

Articles :: BlackWasp Software Development

Twórca na Foxite

Cesar Chalom
http://weblogs.foxite.com/andykramek/ - wzorce projektowe
http://weblogs.foxite.com/cesarchalom/default.aspx
http://www.sweetpotatosoftware.com/SPSBlog/default,date,2007-11-07.aspx - wyjście

Rano, raniuteńko

  1. nauka C# - http://docs.google.com/?pli=1#
  2. Dywagacje na temat .NET development - http://rtipton.wordpress.com/category/net-development/
  3. forum VFP - http://www.svfpug.com.au/
  4. http://wiki.script.aculo.us/scriptaculous/revision/show/6/Ajax.Request
  5. Ciekawy blog VFP - http://www.craigbailey.net/foxtabs.htm - tabulator w IDE
  6. Hsia:
    1. http://blogs.msdn.com/calvin_hsia/archive/2007/10/08/5370183.aspx
    2. http://blogs.msdn.com/calvin_hsia/archive/2004/06/18/159550.aspx na ASP stronie
  7. Naprawdę dobry program do tworzenia pakietów instalacyjnych INNOSETUP - http://klub.chip.pl/innosetup/Innosetup/faq.htm#vc
  8. Coś niebywałego - mamy dwa różne (dokładnie certyfikaty), które produkują kolizję - http://www.win.tue.nl/hashclash/TargetCollidingCertificates/
  9. Jak sprawdzić to:
    To get a human-readable view of the contents of the certificates:              openssl x509 -in TargetCollidingCertificate1.cer -inform DER -text     openssl x509 -in TargetCollidingCertificate2.cer -inform DER -text          To verify the signature on the two certificates against the CA certificate,  first convert the certificates to PEM-format ("openssl verify" does not work with the DER format):              openssl x509 -in TargetCollidingCertificate1.cer -inform DER -out TargetCollidingCertificate1.pem     openssl x509 -in TargetCollidingCertificate2.cer -inform DER -out TargetCollidingCertificate2.pem     openssl x509 -in MD5CollisionCA.cer -inform DER -out MD5CollisionCA.pem          and then do the verification:              openssl verify -CAfile MD5CollisionCA.pem TargetCollidingCertificate1.pem     openssl verify -CAfile MD5CollisionCA.pem TargetCollidingCertificate2.pem 
  10. Narzędzia ciekawe z PCTOOLS
  11.  

wtorek, grudnia 04, 2007

Barbórka wieczorowo:

  1. Strony ajaxowe - http://mbyte.org.ua/ajax/page/2/ a w nim klasyka - opowieść tworcy koncepcji AJAX - http://www.adaptivepath.com/ideas/essays/archives/000385.php
  2. http://www.ajaxprojects.com/ajax/tutorials.php
  3. Pomysły - inne elementy interfejsu: tree (Yahoo), grid (Nitobi, dojo - http://www.sitepen.com/blog/2007/11/06/simple-dojo-grids/ lub http://www.scbr.com/docs/products/dhtmlxGrid/), windows (zamiast wbudowanych) np. http://www.huddletogether.com/projects/lightbox2/, http://prototype-window.xilinus.com/)
  4. Framework XAJAX jest już calkiem dojrzały - http://www.xajaxproject.org/
  5. Super linki do otwartych projektów Flash (połaczenie z JS) - http://osflash.org/projects
  6. Słynne MVC w wykonaniu JS - http://www.javascriptmvc.com/
  7. Hej, trzeba mysleć otwarcie, tak jak Apache Software Foundation (ASF) w swych projektach np. XAP (eXtensible Ajax Platfrom) - http://www.rockstarapps.com/pmwiki/pmwiki.php?n=XAP.XAP lub http://incubator.apache.org/xap/architecture.html. Apache jest tylko ogniwem a łańcuchu, warrstwą w architekturze trójwarstwowej. Inne warstwy jak serwer aplikacji nie mają z nią żadnych powiązań i zależności poza ustalonym interfejsem. Mogą być posadowione na innym komputerze i innej platformie narzedziowej np. PHP, ASP, J2EE czy .NET.
  8. AJAX w ciągu dwóch ostatnich lat wiele zmienił w aplikacjach webowych - http://www.cio.com/article/160650/Beyond_Ajax_Software_Development_Two_Years_from_Now. Rozmowy z ekspertami - http://www.cio.com/article/160650.
  9. Nowe IDE - Komodo - the release of Open Komodo, Aptana and Panic, the ActiveState
  10. DOJO - http://alex.dojotoolkit.org/ - http://www.cio.com/article/160450
  11. Oba - http://www.25hoursaday.com/weblog/
  12. Forum - http://www.daniweb.com/forums/forum117.html
  13. Różnice między implementacją onkeypress :<script language="javascript" type="text/javascript">
    function enterHere()
    {
    if((event.which && event.which == 13) (event.keyCode && event.keyCode == 13))
    {
    find();
    }
    }
    </script>
  14. a w FF:
  15. function enterHere(e)
  16. {
  17. e = e window.event;
  18. var code = e.keyCode e.which;
  19. if(code == 13)
  20. find();
  21. }
  22. VFP - socjologiczne portale -http://msdn2.microsoft.com/en-us/vfoxpro/bb190228.aspx, prezentacje na http://www.svfpug.com.au/
Linki w Barbórkę.
Tradycyjnie górnictwo w Polsce przezywa wielki dzień "Barbórkę", wtedy mam wolne, ale nikt mi nie broni usiaść przy komputerze.
  1. Świetny serwis ajaxian i ten ajaxlines:
    1. Znany autor Hunlock - http://www.hunlock.com/blogs/The_Ultimate_Ajax_Object super obiekt na AJAX gdy nie korzystamy z grubych frameworków na ajaxlines jest on tu, aha jeszcze pisze o konieczności przez wysłaniem danych zakodowaniou ich
    2. Biblioteka AdLib - http://adlib.ozonecreations.com/docs/files/utilities/xhr-js.html
    3. Różności ajaksowe w ajaxlines - http://miniajax.com/index.htm
    4. Ładowanie skryptów na żądanie (JS loader)- http://www.ajaxlines.com/ajax/stuff/article/on_demand_javascript_libraries.php
    5. Unikajmy jak ognia 'eval' - http://www.ajaxlines.com/ajax/stuff/article/using_json_in_ajax_without_using_eval.php
  2. Nauka PHP obiektowego - http://www.hiteshagrawal.com/php/oops-in-php5/oops-in-php5-using-interface
  3. http://www.hiteshagrawal.com/category/javascript/objects-in-javascript
  4. Czytanie XML w JS - http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in-javascript
  5. Ciekway weblog MS - http://weblogs.asp.net/scottgu/archive/2007/11/29/net-web-product-roadmap-asp-net-silverlight-iis7.aspx
  6. Mapa drogowa rozwoju .NET - http://www.microsoft-watch.com/content/developer/microsoft_updates_web_developer_roadmap.html
  7. Zapytaj w Oxfordzie - http://www.askoxford.com/?view=uk
  8. Rady i porady na temat PC: http://www.pcadvisor.co.uk/news/index.cfm?newsid=11481&pn=1
  9. Tutoriale do PHP - http://www.tutorialized.com/view/tutorial/Easily-Format-JSON-using-PHP-and-Interpret-using-Javascript/30492
  10. Kolejny tutorial na temat AJAX - http://www.frihost.com/forums/vt-39219.html

poniedziałek, grudnia 03, 2007

Co z tym MS SQL-em i otwartością MS?
MS udostępnił dwa pożyteczne aplikacje do obsługi tej bazy. Są to:
  • Serownik do MS SQL Servera 2005 dla JDBC (w wersji dla Windows i Unix) w wersji 1.2
  • Sterownik do MS SQL Server dla PHP 5 na Windows (wymaganie - klient natywny SQL Servera)
Warto to zobaczyć
Aha! Jest wsparcie jest poprzez blog:
  1. http://blogs.msdn.com/data/ oraz forum
  2. http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=87&SiteID=1
  3. http://blogs.msdn.com/jdbcteam/
Wejście do forum MS: http://forums.microsoft.com/


czwartek, listopada 29, 2007

Linki dom - 29.11.2007

  1. http://www.beansoftware.com/ASP.NET-Tutorials/JavaScript-Functions.aspx: mamy takie podejścia:
    1. 4 < SCRIPT LANGUAGE =JAVASCRIPT> <!--
      5 input=window.prompt( "Type the number of attachments here" , "5" );
      6 document.write( "<H3>Number of files to be attached: " +input+ "</H3>" )
      7 //--> </ SCRIPT >
    2. 2 < p align ="center">
      3 < input type ="button" value ="Back" onclick ="history.back();">
      4 < p align ="center">
      5 < input type ="button" value ="Forward" onclick ="history.forward();">
    3. 5 < SCRIPT LANGUAGE =JAVASCRIPT> <!--
      6 //----------
      7 function redirectPage()
      8 {
      9 location = "s4.htm"
      10 }
      11 //----------
      12 setTimeout("redirectPage()", 3000);
      13 //--> </ SCRIPT >
  2. Opis kontrolki XMLDataSource - http://www.beansoftware.com/ASP.NET-Tutorials/XMLDataSource-Control.aspx -

    "Save Countries.xml and then close it. Now that xml file is ready, switch to design view of default.aspx. Open Tool box and drag and drop the TreeView control onto page from navigation section of Toolbox. Right click the TreeView control and choose Show Smart Tag. On the TreeView Tasks menu, in the Choose Data Source drop-down list, select New Data Source as shown below..."

  3. Wprowadzenie do JSF - http://jsf.javabeat.net/articles/2007/05/java-server-faces-introduction/ i innych technologii
  4. Nowe możliwości w Java 6 ze strony www.javabeat.net
    1. http://www.javabeat.net/javabeat/java6/articles/what_is_new_in_java_6_0_collections_api.php
    2. http://www.javabeat.net/javabeat/java6/articles/scripting_in_java_6_0_part1.php - przykład:
    3. import javax.script.*;
      class HelloWorld{
      public static void main(String args[]) throws Exception{
      ScriptEngineManager factory = new ScriptEngineManager();
      ScriptEngine engine = factory.getEngineByName("JavaScript");
      engine.eval(new java.io.FileReader("helloworld.js"));
      Invocable inv = (Invocable) engine;
      inv.invokeFunction("testMessage", "Hello World!!!" );
      }
      }
  5. Narzędzie do UML - http://www.visual-paradigm.com/product/vpuml/vpumldownload.jsp?edition=ee&product=vpuml
  6. Strona która wszystko tłumaczy - http://betterexplained.com/
  7. Ciekawe - wtłoczyć do pliku "jar" dwa pliki tekstowe i nastepnie je przeczytać z jego wnetrza. To samo ale z pozycji appletu: ArrayList<String> list = new ArrayList<String>();

    try {
    is = FileUtils.class.getResourceAsStream(s);
    br = new BufferedReader(new InputStreamReader(is));

    while (null != (line = br.readLine())) {
    list.add(line);
    }
    }
  8. Tamże patrz - http://www.rgagnon.com/topics/java-js.html - interakacja js-java
  9. Jak załatwić logowanie w applecie - http://www.rgagnon.com/javadetails/java-0128.html
  10. Jak tworzyć aplikacje webowe - http://www.parleys.com/display/PARLEYS/Comparing%20Java%20Web%20Frameworks - porównanie frameworków



środa, listopada 28, 2007

Linki środa 28.11
http://www.plentyofsoft.com/software-development/windows-std-serial-comm-lib-for-foxpro/
http://www.amazon.com/Head-First-Design-Patterns/dp/0596007124/ref=pd_sim_b_img_4 - ściągnij
http://www.example-code.com/foxpro/https_delicious_post.asp
http://www.ddj.com/development-tools/202802993
http://blog.todmeansfox.com/category/visual-foxpro/

piątek, listopada 02, 2007

Nowinki.

Google pozazdrościł sukcesu MS w pozyskaniu władzy nad Facebook (50 milionów użytkowników) i niespodziewanie uderzył ogłaszając, że 5 listopada udostępni open API do swego "social graph data". Zacznie od serwisu Orkut i iGoogle. Zaprasza również inne firmy. Jedną z nich jest MySpace (Google ją wykupił?) - gdzie oferuje zintegrowany system logowania. Podobnie chciał zrobić MS ze swoim Passport, jemu się nie udało, ostatnią firmą, która się wycofała z tej usługi był eBay. Idea Passport przeżyła w postaci Windows Live ID, ale i ona musi być otoczona "troskliwą" opieką jeżeli chce nabrać większej popularności.

Z doniesień wynika, że Google chce stać się dominującym graczem w obszarze platformy wspierającej społecznościowych aplikacji internetowych (primary platform for social networking-based applications). Pierwsza próba stworzenia takiej platformy to FaceBook. Otwarte API jest potrzebne z uwagi na ciągle logowanie się do różnych sieci społecznościowych i dołączanie do nich swoich "starych" grup przyjaciół. API w Facebook pracuje w środowisku FaceBook więc nie jest wcale takie otwarte. Google jako gracz z tylnego rzędu obiecuje stworzenie uniwersalnej platformy niezależnej od dostawy aplikacji społecznoścowych. Udalo mu się wciągnąć MySpace i Bebo wraz z Friendster. Czy MS wraz z FaceBook pójdą na konfrontację z Google i MySpace?

Tutaj jest blog z Google wyjaśniający potrzebę takiego otwartego API.

Przykład: jest jakaś świetna aplikacja do przetwarzania zdjęć, dzięki API można ją podłączyć do serwisów społecznościowych np Facebook i innych.

Inne linki - http://code.google.com/apis/opensocial/faq.html

Google chce byc posrednikiem między aplikacjami internetowymi a sieciowymi społecznościami. API Google wymaga tylko JavaScriptu, API Facebooka jest napisane w specjalnym języku. Wideo na ZDNET - http://blogs.zdnet.com/BTL/?p=6852

Chęć przyłączenia się do serwisu GG ogłosiły m.in. Plaxo i Oracle (na złość MS).

Serwisy informacyjne (ciekawe):

http://www.techcrunch.com

http://www.techmeme.com/

niedziela, października 28, 2007

Nowe linki:
  1. http://trac.lighttpd.net/trac/wiki/Docs -serwer www (lekki)
  2. http://www.theserverside.com/tt/articles/article.tss?l=ServerMatrix - najnowsze zestawienie serwerów aplikacyjnych Java EE
  3. Ajax wg. Kris Hadlock:
    1. http://www.webreference.com/programming/javascript/ajax_forms/index.html + download (AjaxFormPost)
    2. http://blog.studiosedition.com/
    3. http://www.informit.com/authors/bio.aspx?a=50C1182C-91AB-41A1-9249-F43409207581&rl=1
  4. http://swik.net/?page=3 -ciekawe
  5. http://www.easyeclipse.org/site/home/
  6. http://www.beldzio.com/bezpieczenstwo-mechanizmu-sesji.freez
  7. http://community.creamsoft.com/index.php?name=PNphpBB2&file=viewforum&f=30&sid=1427b653c5e9e879f29c3d075ad4ef9a
  8. http://www.informit.com/
  9. http://ajaxdic.com/Russian/ -słownik
  10. http://www.studiosedition.com/?articles=
  11. http://www.informit.com/articles/article.aspx?p=1078181
  12. http://code.google.com/webtoolkit/
  13. http://itefforts.blogspot.com/search/label/Eclipse