

Show HN: My weekend project - Codestagram - abemassry
http://codestagram.com/

======
JoeCortopassi
I would love this idea, if it was limited to 10-20 lines. The forced
conciseness of it would make devs focus on brief concepts and structure,
rather than complex methods. It would end up being like Dribble rather than
Gist/PasteBin, and be a great place to browse for techniques I hadn't
previously encountered. Think about how fun it would be to scan through an
Instagram style list of stuff like this:

############~C~#############

    
    
      if ((1?1:var)/2) {
          /* it's floating point */
      } else {
          /* it's an integer */
      }
    

#######~Objective-C~########

    
    
      + (NSString *) append:(id) first, ...
      {
          NSString * result = @"";
          id eachArg;
          va_list alist;
    
          if(first)
          {
              result = [result stringByAppendingString:first];
              va_start(alist, first);
              while (eachArg = va_arg(alist, id)) 
                  result = [result stringByAppendingString:eachArg];
              va_end(alist);
          }
    
          return result;
      }
    

#########~PHP~##############

    
    
      $object = new StdClass;
      $object->foo = 'bar';
      echo json_encode($object);
    

############################

I know they aren't the best example, but I would love to be able to scan
through a list of small code snippets (by language) that demonstrate concepts.
On the plus side, it would be an easier way to show some competence in a
language (for future employers) than having to do massive contributions to
open source projects (don't have that much free time). _The thing that makes
or breaks this project is a smallish limit on lines._ Without it, you are just
another Gist/Pastebin, without the benefits of the wide user base and
additional features. I have _zero_ desire to chill at night and scan through a
bunch of random 100+ line snippets that I have no context for, but I _love_
goofing around on Stackoverflow, looking at fancy code snippets

~~~
xxpor
Quick question: wouldn't 1?1:var always return 1?

~~~
JoeCortopassi
Nope. Having '1' as the condition in the ternary operator, causes 'var' to
never be evaluated (to avoid accidental operations with getters and such), but
the compiler allows the 'var' to affect if the '1' is treated as a float or an
int. Here's a breakdown:

if var is a float...

    
    
      (1?1:var)/2

...becomes...

    
    
      (1.0/2)

...which equals 0.5 and is considered _true_ when evaluated. But if var is an
int...

    
    
      (1?1:var)/2

...becomes...

    
    
      (1/2)

...which equals 0 and is considered _false_ when evaluated

~~~
Groxx
Is that part of the spec for coercions, or is it exploiting a typical
compiler's behavior? It certainly doesn't appear to be a required way to
process that statement (optimizations could remove the 'if' portion entirely),
unless it is actually required of the compiler.

------
ruswick
It's a nice novelty, but it certainly won't ever usurp Gists. I'm not sure
that it was intended to. However, there is one aspect of the site that really
irks me: the wood grain background. For whatever reason, this style has become
really pervasive among "hacked-together" sites. Moreover, it sucks. The site
would be better served with a geometric pattern, or no background at all.

~~~
saraid216
Could you elaborate on why the wood grain background sucks?

I'm working on a project and I'm considering using a wood grain background for
a specific UX, but I'm not a designer and have been postponing making any
decisions about it.

~~~
ruswick
The organic pattern and light color are somewhat distracting. It also doesn't
seem thematically consistant, and sort of belies the idea of a modern site
focused on programming.

Most of all, I just get this visceral sense that wood grain is sort of
distasteful, and that plain backgrounds are more aesthetically pleasing.

<http://cl.ly/image/3R392H2g371t>

~~~
saraid216
Hm. I've been thinking about going with a darker wood. (And it _is_
thematically consistent in my case, since my goal is to evoke the sense of an
old, well-kept bookcase; the project has nothing to do with programming
beyond, well, the fact that I'm coding it.)

I'll think about it. I'll pass it through people with actual skill at UX
first, too.

------
Hawkee
So ACE editor + GitHub API + Commenting and Liking. It's a very, very simple
concept. I think mainly what it has going for it is the limited barrier to
entry. I'm just not sure what the long term sustainability is. Mainly its
lacking the personal network aspect. I have no way of finding the developers
I'm following on GitHub.

------
justjimmy
I see it more akin to Dribbble than Instagram. You could also introduce
'rebound' - which is improving/optimizing/add your personal touch to the
'shot' (uploaded image, or code in this case).

I'm actually going to try and redesign this as my case study for this weekend,
thanks for sharing!

~~~
mnicole
Codepen.io and CSSDeck.com are the Dribbbles of code.

~~~
jamesjporter
Those are both focused exclusively on the web though. It would be cool to have
something like those but for a wider community; there's more to programming
than HTML/CSS/JS.

~~~
mnicole
Great point, my bad.

------
mjt0229
If you want to hipster it up, you can convert the code to punchcards.

------
prezjordan
Not sure I understand. Is it just a pasteboard?

~~~
georgemcbay
No! It is a retro-text media social network for rockstar ninja coders.

Facebook is going to buy it for 50 million dollars.

------
travisby
I would benefit from a "copy" button. When I highlight the code snippet, I
also got the line numbers with it. Would be a hassle for large codestagrams

------
jvictor118
It'd be cooler if you could evaluate the expressions. I saw an API for save
evaluation of user's code somewhere on reddit the other day, that might help

------
solox3
So many solutions, so few problems :/

------
m_pagliazzi
Don't see the difference with github gists...

~~~
bvaldivielso
It's like github gists and instagram at the same time, because it let's you
apply "filters" to your code (which are color palettes).

It's a funny idea, I like it!

~~~
johnnymonster
I don't think that some of the commenters here got that... lol

~~~
J_Darnley
When I saw this post I thought to myself "Code with colour filters applied?"
When I clicked through it turns out it is just grey on grey so I can easily
see why some wouldn't get it.

------
sturmeh
Awesome, but I can't delete my comments or posts. D:

Also I think a great purpose for this would be to highlight particular bits of
code/changes found in git, even if it is just a part of a gist.

------
sundara
Nice Idea - I had developed <http://www.Codeshelve.com> sometime back - might
want to check that out.

------
vojant
Really nice weekend project.

Only one column layout isn't the best idea for such site. Maybe 3 thumbnail in
a row would be better?

------
intermeddle
This is similar to <https://snipt.net>

------
rmanyari
Really interesting idea, could become something big for the opensource
community.

------
pablasso
I got the feeling that this got to the frontpage mostly because of the name.

------
cpdean
where are the cross-processing filters? Where's the vignette button?

------
shuzchen
This project is missing one major, necessary feature: direct submission from
your IDE/editor of choice. Creating a write-enabled API is probably the first
step towards that.

~~~
kordless
Or just use Github's.

------
smonte
I also had a similar weekend project, but specific to Java,
<http://javasnips.com/>

------
thomasvendetta
Nice job Abe, keep up the good work!

------
bennyg
No Objective-C?

