Changes between Version 35 and Version 36 of GoogleSummerOfCodeIdeas

Jan 22, 2011, 9:29:55 PM (10 years ago)

harvested more ideas from


  • GoogleSummerOfCodeIdeas

    v35 v36  
    2727        Skill set: kernel development, API design, general C/C++, userland development
    29         Requirements: a DV camera, a machine with a Firewire port.
     29        Requirements: a DV camera, a machine with a Firewire port.    
    3131==== TTY Layer ====
    3434        Tickets: #35 #3232
    3535        Requirements: kernel, and driver development
     37==== Bluetooth Stack Improvements ====
     39    Haiku Bluetooth Stack implements basic functionality on lower and middle layers, this functionality needs to be completed and Bluetooth 2.X possibilities explored.
     41    Requirements: Bluetooth enabled Haiku system
     42    Skill set: C++, kernel development, userland development, global bluetooth stack knowledge(optional)
     43    Tasks: RemoteDevices Database, UserLand tools(Preferences), Pairing/Auth/Encryption use cases, etc.   
     45==== Integrate our PPP implementation ====
     47    Port the PPP implementation to our new network stack. Add phone-line modem support, including HDLC framing and VJC compression (porting both algorithms is sufficient, but make sure the license is compatible to MIT). Implement CHAP authentication. Find and fix bugs.
     49    Tickets: #812, #869, #873, #922, #923, #1059, maybe: #1057, #1058
     50    Requirements: multi-threading basics, maybe network protocols and some kernel/drivers development, maybe UI development
     52==== Multi-monitor support for the app_server ====
     54    The app_server needs to handle multiple monitors in its internal screen representation and configuration. The drawing call dispatching would need to be split up, so that drawing commands are dispatched to different Accelerants.
     56    To ease development, having two graphics cards in your computer is recommended, as none of the existing Haiku drivers currently support dual head output correctly (as the accelerant interface does not define a way to use it).
     58    Skill set: graphics drivers, application design
    3760==== Preflet GUI refactoring ====
    4871    Haiku features an integrated mail management system allowing to manage your mail using Tracker, the file explorer. This system needs some improvements and updates.
    50 ==== Gallium3d ====
     73==== Help Improve WebPositive, Haiku's Native WebKit Based Browser ====
    52     Gallium3d is a software stack allowing faster hardware acceleration in a more cross-platform way. Some work was started to make it run on Haiku, but it lacks a kernel module for handling DRM, so the drivers upper in the stack can plug to it. Write such a module and bring 3d acceleration to Haiku.
     75    WebPositive is Haiku's native WebKit based browser. Students interested in this will be need to contact us on the possible areas to work on.
     77==== NFSv4 client with xattr support and caching ====
     79    Haiku has an NFS client, but using the out of date NFSv2 specification and the old file system API. This makes it unusable for any practical purpose. Also, the current implementation doesn't support caching, which makes it slow, and lacks xattr handling, which is very important in Haiku.
     81    Requirements: network protocols, maybe kernel development, userland development 
     83==== Hardware 3D acceleration ====
     85    Design or port an existing 3D driver interface. See for example the Gallium3D project. Another option is to write a compatibility layer to load binary Linux 3D graphics drivers. There should probably still be our own 3D acceleration API for drivers.
     87    Skill set: graphics drivers, API design
    5589==== [ BuildBot] for Haiku's source tree ====
    6599        Requirements: Python
    67 ==== Language bindings in SWIG ====
     101==== Create Language Bindings to Haiku's C++ API ====
    69103    Scripting languages should be able to use the system API directly. Python and Perl have an object-oriented approach that would allow using the Be API and using the full power of the Be API right inside your scripts. This includes displaying windows, but also accessing the locale kit, or other native stuff.