21

We have a new design for our site and it should be rolled out to everyone soon. There are still things that could be tweaked, but in general, I like it very much. This post is to discuss the things that could be improved and I'd like to present the issues I was having a look at and I would value your opinions, counter-arguments, and other suggestions.

Logo

Make no mistake, I am to blame for the current one. I pointed out color deficiencies and wrong font hinting here and our dedicated designer liked the changes and included them right away. What I haven't anticipated is that there is a general problem with Mathematica, SVG, and aplhablending on polygon-borders

img

If you look closely, it appears as if there are spiderwebs over our logo. These are the borders where polygons meet and alpha-blending tries to calculate the mixed color. This is a general problem and I already discussed this with Inkscape developers in the past. The solution is to give the edges of polygons the same color.

img2

However, this appears to be a scale-dependent solution, because when you zoom in the last example, it looks like this

img3

So my problem is, if I give the edges a thickness that is large enough to remove the spider-webs, we will have edge-artifacts when you zoom in. Important to note is that on the site, the logo is an SVG graphics and you will see these artifacts (instead of a pixelized version).

I will append a small tool that lets you tweak the logo and copy it as graphics or directly as SVG code. This can be (google chrome dev tool) directly inserted at the HTML-node where the logo is for testing purpose. In addition, you can copy (and share!) the settings for the logo. I chose as out red color the main red that is visible on the page.

Question: Is anyone able to produce an SVG logo of size 50px that looks good small and large?

Answer: We have discussed this and it appears possible with careful adjustments of the edges and polygons. Another reliable way seems to be to fix the edges with Illustrator.

Overall site colors

The current site looks like this

thumb

I'm OK with what it looks now, but if someone asked me what I would change, then I have the following suggestions (completely subjective)

  1. Our "main" red looks better if we used the one from the small dot in the toolbar. This color should be used in the logo, for unvisited links and for the "Ask Question" button. All other red colors (darker borders, visited links) should be derived from this color
  2. Visited links should rather be desaturated than made darker. This keeps their brightness and has a more "uninteresting because already seen" look&feel
  3. The yellow backgrounds for the questions you have subscribed are a bit too much. I would raise their lightness a tiny bit
  4. The colors for code-highlighting should also be tweaked slightly. This means, we use the blue from the "Featured Question" indicator, the green from the "has accepted answer" indicator, our main red and possibly some other colors. These colors are reduced in brightness to an equal value and they will fit perfectly into the rest of the site

These changes are really minor and you have to compare closely to see the differences. I made two screenshots of how it would look. One from the main page and one from a question

enter image description here enter image description here

Code for the logo creator

seLogo[a_Association] := 
  seLogo[a["dark"], a["light"], a["bg"], a["value1"], a["value2"]];
seLogo[dark_: RGBColor[{172, 0, 14}/255.], 
  light_: RGBColor[{255, 204, 1}/255.], bg_: GrayLevel[0.99], 
  v1_: 1.0, v2_: 1.3] := DynamicModule[
  {
   $darkColor = dark,
   $lightColor = light,
   $bg = bg,
   $value1 = v1,
   $value2 = v2,
   $thick = 0,
   $iconSize = 40,
   p7 = Polygon[
     Table[N[{Cos[t], Sin[t]}], {t, Pi/14, 2 Pi, 2 Pi/7}]],
   colFunc,
   triangulate,
   moretriangles,
   shrink,
   colour3,
   colour4,
   PolygonCentroid,
   polygons
   },
  colFunc[x_] := Blend[{$darkColor, $lightColor}, x];
  triangulate = 
   Polygon[v_] :> (Polygon[Append[#, Mean[v]]] & /@ 
      Partition[v, 2, 1, {1, 1}]);
  moretriangles = 
   Polygon[{a_, b_, c_}] :> 
    With[{ab = (a + b)/2, bc = (b + c)/2, 
      ca = (c + a)/2}, {Polygon[{a, ab, ca}], Polygon[{ab, b, bc}], 
      Polygon[{c, ca, ab}], Polygon[{c, ab, bc}]}];
  shrink = 
   Polygon[{a_, b_, c_}] :> 
    With[{aa = (6 a + b + c)/8, bb = (a + 6 b + c)/8, 
      cc = (a + b + 6 c)/8}, {Polygon[{a, b, bb, aa}], 
      Polygon[{b, c, cc, bb}], Polygon[{c, a, aa, cc}], 
      Polygon[{aa, bb, cc}]}];

  colour3[] := q : Polygon[{_, _, _}] :> {$bg, q};

  PolygonCentroid[pts_?MatrixQ] := 
   With[{dif = Map[Det, Partition[pts, 2, 1, {1, 1}]]}, 
    ListConvolve[{{1, 1}}, 
       Transpose[pts], {-1, -1}].dif/(3 Total[dif])];
  colour4[a_?NumericQ, b_?NumericQ] := 
   Polygon[v_] /; 
     Length[v] == 
      4 :> {Directive[EdgeForm[{AbsoluteThickness[$thick], #}], 
        FaceForm[#]] &@colFunc[a - b Norm[PolygonCentroid[v]]], 
     Polygon[v]};
  polygons = 
   p7 /. triangulate /. moretriangles /. shrink /. shrink /. shrink;
  Deploy@Panel@Column[{
      Row[{"dark:", ColorSlider@Dynamic@$darkColor, "light:", 
        ColorSlider@Dynamic@$lightColor, "bg:", 
        ColorSlider@Dynamic@$bg}, Spacer[20]],
      Row[{"value 1:", LabeledSlider[Dynamic[$value1], {0, 3}], 
        "value 2: ", LabeledSlider[Dynamic[$value2], {0, 3}], 
        "Edge Thickn.: ", LabeledSlider[Dynamic[$thick], {0, 3, 1}]}, 
       Spacer[20]],
      Panel[
       Dynamic[Graphics[
         polygons /. colour3[] /. colour4[$value1, $value2], 
         ImageSize -> 400]], Background -> White],
      Panel[
       Dynamic[Graphics[
         polygons /. colour3[] /. colour4[$value1, $value2], 
         ImageSize -> $iconSize]], Background -> White],
      Row[{
        Button["Copy Values", 
         CopyToClipboard[
          Association["light" -> $lightColor, "dark" -> $darkColor, 
           "bg" -> $bg, "value1" -> $value1, "value2" -> $value2]]],
        Button["Copy Graphics", 
         CopyToClipboard[
          Graphics[polygons /. colour3[] /. colour4[$value1, $value2],
            ImageSize -> $iconSize, ImageMargins -> 0, 
           PlotRangePadding -> None]]],
        Button["Copy SVG Code", 
         CopyToClipboard[
          ExportString[
           Graphics[
            polygons /. colour3[] /. colour4[$value1, $value2], 
            ImageSize -> $iconSize, ImageMargins -> 0, 
            PlotRangePadding -> None], "SVG"]]]
        }, Spacer[20]]
      }, Center, 2
     ]
  ]

seLogo[Association["light" -> RGBColor[1., 0.8, 0.00392156862745098], 
  "dark" -> RGBColor[0.788235294117647, 0.11372549019607843, 
    0.1803921568627451], "bg" -> GrayLevel[0.99], 
     "value1" -> 1.765, "value2" -> 2.15]]
  • I'm supportive of all the changes you have proposed here and in the other thread. The only thing that I'm not sure about is the red color instead of maroon. I believe the original colors were chosen by Jin to match the shades from the original logo, which in turn comes from Mathematica's SunsetColors. – rm -rf Dec 10 '18 at 0:16
  • @rm-rf The initial suggestion of using a strong red came entirely from SE staff. I have no information why this change was required in the first place or how much freedom we have to suggest alternatives. – halirutan Dec 10 '18 at 0:28

You must log in to answer this question.

Browse other questions tagged .