f[x_,y_]=x^3+y^3-x y

gradF[x_,y_]=D[f[x,y],{{x,y}}]

tangentPlane[x_,y_]:=Module[{B},B=gradF[x,y];Polygon[({x,y,f[x,y]}+10#)&/@{{1,0,B[[1]]},{0,1,B[[2]]},{-1,0,-B[[1]]},{0,-1,-B[[2]]}}]]

e=.1;main=Table[Polygon[{{x,y,f[x,y]},{x+e,y,f[x+e,y]},{x+e,y+e,f[x+e,y+e]},{x,y+e,f[x,y+e]}}],{x,-1,1-e,e},{y,-1,1-e,e}];

FunctionWithTangentPlaneAt[u_,v_]:=Graphics3D[{Red,PointSize[.03],Point[{u,v,f[u,v]}],Gray,main,Blue,Opacity[0.5],tangentPlane[u,v]},PlotRange->{{-1,1},{-1,1},{-1,1}},Lighting->"Neutral"]

DynamicModule[{pt},
Panel[Row[{Dynamic[FunctionWithTangentPlaneAt@@pt],Slider2D[Dynamic[pt],{-1,1,0.2}]},Spacer[20],Alignment->{Automatic,Top}]]]