It's great that webstack has got many improvements recently, but as far as 
I can see even more job is still to be done. E.g. for me 2 kinds of web 
apps that I need most often are web UIs and high-performance web services. 
I'm not sure about performance (last time I tested HttpServer it was quite 
moderate, but maybe it has changed already), but for web UIs I miss at 
least following features (taking Mux as the basis): 

 - template engine: Mustache.jl can probably be used, but so far Google 
knows about zero common occurrences of Mustache.jl and Mux.jl except for 
very general lists of frameworks
 - serving static files: possible to do in pure Julia, of course, but it's 
another several hours to implement 
 - sessions: middleware is exactly for this kind of things, but again, it's 
better to have it out of the box, than write everything yourself
 - authentication and security: how to set up HTTPS? how to restrict access 
to certain pages? 
 - stability: I've just knew that Morsel.jl is now deprecated, if I had 
applications using it, I would need to migrate them now, and I'm really not 
sure Mux.jl won't be deprecated during next year too

This means that if you want to provide users with a nice interface to your 
Julia application, you should either spend a couple of days adding missing 
stuff (and probably not in way suitable for other users) or just use, say, 
Python and do the job in a couple of hours.  

On Thursday, September 24, 2015 at 2:35:57 AM UTC+3, Jonathan Malmaud wrote:
>
> The webstack has seen considerable improvement lately. Mux is the most 
> mature and supported webapp framework at this point.
>
> On Wednesday, September 23, 2015 at 4:58:01 PM UTC-4, Andrei Zh wrote:
>>
>> If you are looking for a best in the class libraries, you probably won't 
>> find many. This is implied by a simple fact that most such libraries had 
>> already been created in other languages by the time Julia was born. 
>> However, if you want something comparable to such best libraries, then I 
>> would stress the following areas (from my experience and highly 
>> subjectively, of course):
>>
>>  * image processing (e.g. Images.jl, ImageView.jl), which still changes, 
>> but has quite impressive functionality already
>>  * deep learning (e.g. Mocha.jl, Strada.jl, Boltzmann.jl) - fast, full 
>> functional, easy to use and modify libraries (compare to frameworks in C++ 
>> or Theano, for example)
>>  * concurrent, parallel and distributed programming (core Julia) - far 
>> behind Python or R, probably comparable with Erlang
>>  * GPU computing (see JuliaGPU organization) - pretty convenient, 
>> especially combined with Julia's compilation to native code
>>  * symbolic and metaprogramming (macros, Calculus.jl) -  like Lisp with 
>> infix notation or SymPy, built in the language
>>
>> I also expect that Julia will become more popular with development of new 
>> areas for which there are no good libraries at all and Julia may become 
>> perfect solution. At the same time, to keep people involved, we not only 
>> need to add more strengths, but also remove weaknesses. And Julia's web 
>> stack seems to be one of the biggest weaknesses, so if you are interested 
>> and wish to contribute, please, do it. 
>>
>>
>> On Wednesday, September 23, 2015 at 5:03:02 PM UTC+3, Páll Haraldsson 
>> wrote:
>>>
>>> On Wednesday, September 23, 2015 at 12:35:47 PM UTC, Randy Zwitch wrote:
>>>>
>>>> Julia is as capable as any of the languages you have mentioned as far 
>>>> as I'm concerned. When I read "people want to get work done", I read that 
>>>> as "people want SOMEONE ELSE to do the work".
>>>>
>>>
>>> And you would be absolutely right. I tried to phrase the question in a 
>>> positive way with "and help needed?" [For me, that would be mostly non-math 
>>> stuff*, and I've submitted some trivial/beginner.. fixes.]  I'm ok with 
>>> that as I am just tinkering. Imagine Julia had no libraries, as at first 
>>> then I would have been as exited about the language. It is a language that 
>>> makes me think differently and try new paradigms I haven't tried before 
>>> (multiple dispatch).
>>>
>>> I might have tried to build a website (and web server from scratch). 
>>> Some people do not want to be early adopters. I can understand that. I'm 
>>> not so sure you would be by now. I'm asking about the "ecosystem" not the 
>>> language per se. I know about JuliaQuant, BioJulia, GPU stuff in Julia 
>>> JuliaWeb etc. I am so grateful for what has already been done with the 
>>> language - and the libraries from what I can see. If there where my fields, 
>>> I think I would jump on Julia right now.
>>>
>>> I'm not sure why people are reluctant, I want to tell them you do not 
>>> only have basic building blocks (linear algebra/matrix multiplication, FFT 
>>> etc. stuff in Base), but also these libraries that (mostly) work, and if 
>>> not you can help fix/contribute. I do not want to oversell Julia, so I keep 
>>> quiet (mostly) about stuff I'm ignorant about..
>>>
>>>
>>> * I knew about say, Morsel (Sinatra-like), then Mux is recommended over 
>>> it. I'm not sure, it seems to be a replacement/also Sinatra-style. I've 
>>> never used "full web frameworks". PHP isn't my favorite language and while 
>>> I'm sure Python (or Ruby) is nice for web stuff I'm willing to use Julia 
>>> even if there is (short term) pain/learning experience.. I would want to be 
>>> able to do what is needed in pure Julia. Even knowing about future 
>>> direction is helpful, there might be some duplication of effort and you 
>>> might end up fixing the wrong package.. A list of packages to use/focus on 
>>> for helping with would be helpful in this and the other two areas.
>>>
>>> > Julia probably isn't the place for them now
>>>
>>> Are at least some of the packages ready and used in production already?
>>>
>>> -- 
>>> Palli.
>>>
>>>

Reply via email to